我正在使用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

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


当前回答

我在Webdriver 3.8.0 (Chrome 73.0.3683.103和ChromeDriver 73.0.3683.68)上遇到了这个问题。我这么做之后,问题就消失了

pip install -U selenium

将Webdriver升级到3.14.1。

其他回答

简单的解决方案是下载chrome驱动程序并移动 将可执行文件转移到运行python文件的文件夹。

在Ubuntu上:

sudo apt install chromium-chromedriver

在Debian上:

sudo apt install chromium-driver

在macOS上安装Homebrew,然后执行

brew install --cask chromedriver

我看到讨论仍然在讨论通过下载二进制文件和手动配置路径来设置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二进制文件。

测试后检查ChromeDriver是否已安装

chromedriver

你应该看到

Starting ChromeDriver version.number 
ChromeDriver was successful

检查ChromeDriver的路径

which chromedriver

在代码中使用Path

...
from selenium import webdriver

options = Options()
options.headless = True
options.add_argument('windows-size=1920x1080')

path   = '/usr/local/bin/chromedriver'
driver = webdriver.Chrome(path, options=options)

(Mac用户) 我也有同样的问题,但我用这个简单的方法解决了: 你必须把你的chromedriver.exe放在你执行脚本的同一个文件夹中,然后在pyhton中写以下指令:

import os

操作系统。环境[“路径”]+= os。[参考文献]