消息:“chromedriver”可执行文件需要在 PATH 中

Posted

技术标签:

【中文标题】消息:“chromedriver”可执行文件需要在 PATH 中【英文标题】:Message: 'chromedriver' executable needs to be in PATH 【发布时间】:2017-12-08 14:59:02 【问题描述】:

所以,我使用 OS X El CapitanEclipse (Neo) and Python。我用 Selenium 脚本编写了一些 Python。

这些脚本运行良好。

然后我从OSX Sierra升级到El Capitan

注意:这是唯一的重大变化 我对我的设置所做的。

当我尝试运行相同的脚本时,现在,我得到了

消息: chromedriver 可执行文件需要在 PATH 中

据我所知,chromedriver 在我的 PATH 上。

现在,我只有在 hard copy 指向我的 chrome 驱动程序的路径时才能使我的脚本工作,众所周知,这不是最优雅的做事方式。

其他人有/遇到过这个问题吗?对我的Eclipse + Python 的任何配置的想法。

My Eclipse and Python project screen shot

my PYTHONPATH screen shot

【问题讨论】:

【参考方案1】:

我不知道python。但是无论语言如何,webdriver 的实现都应该相同。在这里您调用了 chrome webdriver,但是您是否在代码中定义了 chromedriver.exe 的路径?例如,在java中它看起来像这样

System.setProperty("webdriver.chrome.driver", "C:\\selenium-java-3.4.0/chromedriver.exe");
driver = new ChromeDriver();

您得到的错误是指 chromedriver.exe 而不是 python 环境。

Google 文档中的 Python 解决方案:

import time
from selenium import webdriver

driver = webdriver.Chrome('/path/to/chromedriver')  # Optional argument, if not specified will search path.
driver.get('http://www.google.com/xhtml');
time.sleep(5) # Let the user actually see something!
search_box = driver.find_element_by_name('q')
search_box.send_keys('ChromeDriver')
search_box.submit()
time.sleep(5) # Let the user actually see something!
driver.quit()

【讨论】:

【参考方案2】:

首先验证您的驱动程序路径,如果您打开命令提示符并输入 chromedriver 并按 Enter。如果您收到消息“正在启动 ChromeDriver 2.15.322448 ..”,则说明您的路径设置正确。 在 python 中,替代解决方案是您可以使用driver = webdriver.Chrome("path_to_driver/chromedriver.exe") 希望这应该工作!

【讨论】:

谢谢德鲁夫!!!我想我已经看到了这些检查和解决方案。事实上,我的操作系统/系统路径设置正确,因为在终端中,当我输入“chromedriver”时,它会像你说的那样启动。就像我在原始问题中提到的那样,按照您的建议,对路径进行“硬拷贝”也可以。但这仍然留下了我的问题,为什么我似乎无法配置 Eclipse 来查看我的 PATH,尽管我已经设置了 PYTHONPATH,如上面的屏幕截图所示,“包括安装我的 chromedriver 的目录” 我对 mac os 目录一无所知,但在 Windows 中,它的工作方式类似于在 'C:\Python27\Scripts' 中添加 'chromedriver.exe'(请参阅您的大小写并相应更改)然后您无需提供驱动程序的路径,只需使用'driver = webdriver.Chrome()'

以上是关于消息:“chromedriver”可执行文件需要在 PATH 中的主要内容,如果未能解决你的问题,请参考以下文章

selenium.common.exceptions.WebDriverException:消息:“chromedriver”可执行文件需要在无头 Chrome 的 PATH 错误中

selenium - chromedriver 可执行文件需要在 PATH [重复]

Selenium 错误:“chromedriver”可执行文件需要在 PATH [重复]

找不到 chromedriver 可执行文件

在 python 中执行 chromedriver 时出错

OSX 修复 Selenium Chromedriver 启动错误产生未知系统错误 -86 可执行文件中的错误 CPU 类型?