0

更新后,我完全无法让 Selenium (3.0.1) 与 Firefox (50.1.0) 一起使用。这是我正在运行的带有相关错误的代码:

from selenium import webdriver

website = 'www.google.com'

driver = webdriver.Firefox() 
driver.get(website)

这会产生以下错误:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/firefox/webdriver.py", line 135, in __init__
self.service.start()
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/common/service.py", line 71, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'geckodriver'executable needs to be in PATH.

我已经阅读了很多关于需要将各种可执行文件添加到我的 PATH 变量以运行 Selenium 的帖子,但到目前为止我完全失败了。我当前的 PATH 变量如下:

$echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

我无法成功附加 firefox 或 geckodriver 可执行文件。它似乎已经存在(我已将可执行文件复制到'/usr/local/bin',它仍然给我同样的错误。非常感谢任何和所有帮助(Mac OS X 用户)

4

3 回答 3

0

您可能必须安装 geckodriver 并将其添加到您的执行路径中。使用以下 bash 命令安装最新的 geckodriver:

which geckodriver || (wget https://github.com/mozilla/geckodriver/releases/download/v0.14.0/geckodriver-v0.14.0-linux64.tar.gz -O /tmp/geckodriver.tar.gz && tar -C /opt -xzf /tmp/geckodriver.tar.gz && chmod 755 /opt/geckodriver && ln -fs /opt/geckodriver /usr/bin/geckodriver && ln -fs /opt/geckodriver /usr/local/bin/geckodriver)

这将为您安装 geckodriver v0.14.0。我用最新的 firefox 51.0.1 对其进行了测试

于 2017-02-01T15:55:15.570 回答
0

您也可以在运行时将路径附加到 PATH 变量。

import sys

sys,path.append('the path where the file is stored')

于 2017-02-01T16:44:16.093 回答
0

像往常一样,一周没有解决这个问题,然后重新搜索问题,我能够解决它。此链接中给出了帮助我的提示:

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

我没有将 geckodriver.exe 文件添加到正确的路径。当我下载文件并将其移动到我的 anaconda 箱时,它工作得很好:

mv geckodriver /anaconda/bin #在导航到我的下载后

希望这可以帮助!

于 2017-01-03T16:23:29.150 回答