[英]Python Selenium Beta Chrome driver uses wrong binary path
[英]Python + Selenium: Path to driver
是否有可能运行 Python + Selenium 脚本而不在 Python 行中的每个脚本中输入exe
文件的路径:
driver = webdriver.Chrome().
同样的问题适用于“IE Driver”、“Edge Driver”和“Gecko Driver”。 可以通过一些通用的 python class 来完成吗?我应该为它创建一些额外的文件吗? 还是集成开发环境配置的问题?
我会很感激你的专家的话。
您可以更改源代码 。 只需将executable_path
的值分配给chromedriver路径即可。 让我解释 -
当你“正常”输入这个 -
driver = webdriver.Chrome(r"path\chromedriver.exe")
WebDriver
对象在其类中初始化。 类文件位于//selenium_folder/webdriver/chrome/webdriver.py。 在其中,如果您注意到__init__
方法,则它接受executable_path
的参数。 所以你可以简单地做 -
def __init__(self, executable_path="chromedriver", port=0,
options=None, service_args=None,
desired_capabilities=None, service_log_path=None,
chrome_options=None):
executable_path = "path\chromedriver.exe"
这样,以下代码将成功运行驱动程序 -
driver = webdriver.Chrome()
无论您使用哪种操作系统,您都有多种选择来实现这一目标。
chorme_driver.exe
)放在python文件的相对文件夹中。 (这是我通常做的) driver = webdriver.Chrome('../chromedriver.exe')
driver = webdriver.PhantomJS('../phantomjs.exe')
PATH
变量中将地址放到chrome driver
中 driver = webdriver.Chrome('chromedriver.exe')
driver = webdriver.PhantomJS('phantomjs.exe')
driver = webdriver.Chrome(os.environ.get('CHROME_DRIVER_PATH'))
driver = webdriver.PhantomJS(os.environ.get('PHANTOMJS_DRIVER_PATH'))
是的,您必须将驱动程序存储在PATH中。 例如我的位于C:\\python\\python(version)\\lib\\site-package\\selenium\\webdriver
,然后将驱动程序存储在适当的文件夹中。 还要确保添加机器环境变量的路径。
这对我有用。 我将驱动程序文件与我正在编码的应用程序放在同一个文件夹中,代码中的行如下所示:
web = webdriver.Chrome('./chromedriver.exe')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.