我使用 selenium 在 kivy 中编写了一个非常简单的脚本。
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()
Run Code Online (Sandbox Code Playgroud)
它基本上只是一个按钮,当你点击它时,就会带你去谷歌。我正在使用 buildozer 在我的手机上转换/运行它。我已将依赖项设置为 python、kivy、selenium、chromedriver、urllib3。然后 pip 安装这些依赖项。该应用程序将加载,但这是我尝试运行 selenium 时的输出。
python : PermissionError: [Errno 13] Permission Denied
Run Code Online (Sandbox Code Playgroud)
从网上查了一下,这个错误似乎是chromedriver配置不正确时弹出的。使用此网站:https://chromedriver.chromium.org/getting-started/getting-started---android它指出 chromedriver 应该适用于 android chrome,但在他们的示例中他们使用,'./chromedriver'所以我也在我的程序中添加了它driver=webdriver.Chrome('./chromedriver')但是这给了我同样的错误。有多个不同版本的chromedriver,因此我唯一能想到的是buildriver安装的chromedriver版本与我手机上的Chrome版本不兼容?但除此之外,我不知道为什么会收到此错误。
I don't exactly know how to describe the issue I'm having, so I'll just show it. I have 2 data tables, and I'm using regex to search through and extract values in those tables based on if it matches with the correct word. I'll put the whole script for reference.
import re
import os
import pandas as pd
import numpy as np
os.chdir('C:/Users/Sams PC/Desktop')
f=open('test5.txt', 'w')
NHSQC=pd.read_csv('NHSQC.txt', sep='\s+', header=None)
NHSQC.columns=['Column_1','Column_2','Column_3']
HNCA=pd.read_csv('HNCA.txt', sep='\s+', header=None)
HNCA.columns=['Column_1','Column_2','Column_3','Column_4']
x=re.findall('[A-Z][0-9][0-9][A-Z]-[H][N]',str(NHSQC))
y=re.findall('[A-Z][0-9][0-9][A-Z]-[C][A]-[H][N]',str(HNCA))
print (NHSQC)
print (HNCA) …Run Code Online (Sandbox Code Playgroud)