无法使用Firefox(Python)运行Selenium

时间:2016-12-22 18:20:11

标签: python selenium firefox web-scraping geckodriver

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

<div class="center">
    <canvas id="canvas_left" class="left" width="150px" height="400px"></canvas>
    <canvas id="canvas_main" class="center"></canvas>
    <canvas id="canvas_right" class="right" width="150px" height="400px"></canvas>
</div>

这会出现以下错误:

from selenium import webdriver

website = 'www.google.com'

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

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

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.

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

3 个答案:

答案 0 :(得分:0)

像往常一样,考虑到一周不做这个,然后重新搜索问题,我能够解决它。帮助我的暗示在这个链接中给出:

Selenium in Python on Mac - Geckodriver executable needs to be in PATH

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

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

希望这有帮助!

答案 1 :(得分: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测试了它。

答案 2 :(得分:0)

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

import sys

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

相关问题