我正在使用python和selenium,并从这个网站下载了用于我的windows计算机的chromedriver: http://chromedriver.storage.googleapis.com/index.html?path=2.15/

下载压缩文件后,我将压缩文件解压缩到我的下载文件夹中。然后我把可执行二进制文件(C:\Users\michael\Downloads\chromedriver_win32)的路径放到环境变量“path”中。

然而,当我运行以下代码:

  from selenium import webdriver

  driver = webdriver.Chrome()

... 我一直得到以下错误消息:

WebDriverException: Message: 'chromedriver' executable needs to be available in the path. Please look at     http://docs.seleniumhq.org/download/#thirdPartyDrivers and read up at http://code.google.com/p/selenium/wiki/ChromeDriver

但是-如上所述-可执行文件在路径中(!)…这是怎么回事?


当前回答

正如Aphid在他的评论中提到的,如果你想手动完成,你必须只包括你的webdriver存储的目录,而不是可执行文件:

例子:

正确的:

路径=$PATH:/路径/到/网络驱动程序/文件夹

错误的:

PATH=$PATH:/path/to/webdriver/chromedriver.exe


Windows系统变量和CMD测试:

其他回答

我看到讨论仍然在讨论通过下载二进制文件和手动配置路径来设置chromedriver的旧方法。

这可以使用webdriver-manager自动完成

pip install webdriver-manager

现在问题中的上述代码将简单地与下面的更改一起工作,

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

driver = webdriver.Chrome(ChromeDriverManager().install())

同样可以用来设置Firefox、Edge和ie二进制文件。

我们必须添加路径字符串,以字符串前的字母r开头,对于原始字符串。我用这种方法进行了测试,它是有效的。

driver = webdriver.Chrome(r"C:/Users/michael/Downloads/chromedriver_win32/chromedriver.exe")

MAC用户:

下载Chromedriver: https://sites.google.com/a/chromium.org/chromedriver/downloads

2.在终端输入“sudo nano /etc/paths”

3.添加一行Cromedriver的路径,例如:"/Users/username/Downloads"

试着再运行一次测试!

正如Aphid在他的评论中提到的,如果你想手动完成,你必须只包括你的webdriver存储的目录,而不是可执行文件:

例子:

正确的:

路径=$PATH:/路径/到/网络驱动程序/文件夹

错误的:

PATH=$PATH:/path/to/webdriver/chromedriver.exe


Windows系统变量和CMD测试:

如果你正在使用机器人框架RIDE。然后你可以从官网下载Chromedriver.exe,并将这个。exe文件保存在C:\Python27\Scripts目录下。现在将此路径作为环境变量。C: \ Python27 \ \ chromedriver.exe的脚本。

重新启动计算机并再次运行相同的测试用例。你不会再遇到这样的问题了。