如何在Android上使用Selenium Chromedriver



我在kivy中使用selenium编写了一个非常简单的脚本。

from kivy.uix.button import Button
from kivy.uix.floatlayout import FloatLayout
from kivy.app import App
from selenium import webdriver
class KivyButton(App):
def update(self,instance,*args):
driver = webdriver.Chrome()
driver.get('https://google.com')
def build(self):
self.layout  = FloatLayout(size=(300,300))
self.mybtn=Button(text='Enter',on_press=self.update,pos=(500,300),size_hint=(.1,.1))
self.layout.add_widget(self.mybtn)
return self.layout
KivyButton().run()

它基本上只是一个按钮,当你点击它时,它会带你去谷歌。我正在使用buildozer在我的手机上转换/运行它。我已经将依赖项设置为python、kivy、selenium、chromedriver、urllib3。然后pip安装这些依赖项。应用程序会加载,但这是我尝试运行selenium时的输出。

python : PermissionError: [Errno 13] Permission Denied

在线查看时,如果未正确配置chromedriver,则会弹出此错误。使用此网站:https://chromedriver.chromium.org/getting-started/getting-started---android它指出chromedriver应该适用于android chrome,但在他们的例子中,他们使用'./chromedriver',所以我在我的程序中也添加了driver=webdriver.Chrome('./chromedriver'),但这给了我同样的错误。有多个不同版本的chromedriver,因此我唯一能想到的是buildriver安装的chromedriver版本与我手机上的Chrome版本不兼容?但除此之外,我不知道为什么我会收到这个错误。

from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_experimental_option('androidPackage', 'com.android.chrome')
driver = webdriver.Chrome('./chromedriver', options=options)
driver.get('https://google.com')
driver.quit()

你试过这些选择吗?

来源:https://chromedriver.chromium.org/getting-started/getting-started---android

尝试在buildozer.spec文件中添加所需的权限。

相关内容

  • 没有找到相关文章

最新更新