python - Mac 上 Python 中的 Selenium - Geckodriver 可执行文件需要位于 PATH 中

标签 python selenium firefox selenium-webdriver selenium-chromedriver

我是编程新手,大约 2 个月前开始使用 Python,并且正在阅读 Sweigart 的“使用 Python 文本自动化无聊的东西”。我正在使用 Spyder 3 并且已经安装了 selenium 模块和 Firefox 浏览器。我在 python 文件中使用了以下代码

from selenium import webdriver
browser = webdriver.Firefox()
browser.get('http://inventwithpython.com')

我收到这个错误:

Message: 'geckodriver' executable needs to be in PATH.

除了进入终端并使用安装之外,我还下载了 geckodriver.exe

brew install geckodriver

奇怪的是,如果我进入终端并输入“python”,然后输入代码,它就可以工作,但当我在 Spyder 中运行该文件时却不行。我需要将 geckodriver.exe 文件放在哪里才能使其工作?我试过将它放在不同的文件夹中(与 python 文件相同的文件夹,与 webdriver 文件相同的文件夹,在用户 bin 中,等等)但我得到了相同的错误

我看过类似的问题,但似乎找不到有效的方法。我也尝试过使用 Chrome,但我遇到了同样的错误,但使用的是 chromedriver。

which geckodriver

产生 /usr/local/bin/geckodriver

我也在使用 Mac,所以文件路径对我来说比在 Windows 上要难一些。

最佳答案

下载geckodriver,放到/usr/local/bin; 然后像这样使用 webdriver.Firefox:

from selenium import webdriver
driver = webdriver.Firefox(executable_path = '/usr/local/bin/geckodriver')

关于python - Mac 上 Python 中的 Selenium - Geckodriver 可执行文件需要位于 PATH 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41435983/

相关文章:

python - 随机数算法

python - 使用 Python Selenium 从 span 中提取日期

selenium - 动态在 FindsBy 中与 selenium 一起使用

javascript - JSON.parse 在循环对象上不会出错

internet-explorer - 浏览器的 JavaScript 开发插件

javascript - 无法在 Django 中实现动态下拉列表

python - Djapian - 过滤结果

xpath 选择器中的 C# 变量

html - 内容在 Firefox 和 Internet Explorer 中不起作用?

python - Standard Streams 文件是否存储在磁盘中?