Невозможно запустить Selenium с Firefox (Python)

Я совершенно не могу заставить 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)


person Zach Escalante    schedule 22.12.2016    source источник
comment
Возможный дубликат Selenium с использованием Python - исполняемый файл Geckodriver должен быть в ПУТИ   -  person Balakrishnan    schedule 22.12.2016
comment
Я пытался выполнить эти точные шаги в различных формах, и пока ни один из них не сработал.   -  person Zach Escalante    schedule 22.12.2016
comment
Я также добавил geckodriver.exe в путь, но это все еще не решило проблему.   -  person Zach Escalante    schedule 22.12.2016


Ответы (3)


Как обычно, если неделю не работать над этим, то повторно погуглив проблему, я смог ее решить. Подсказка, которая мне помогла, была дана по этой ссылке:

Selenium в Python на Mac — исполняемый файл Geckodriver должен быть в PATH

Я не добавлял файл geckodriver.exe по правильному пути. Когда я загрузил и переместил файл в корзину anaconda, все заработало нормально:

mv geckodriver /anaconda/bin #после перехода к моим загрузкам

Надеюсь это поможет!

person Zach Escalante    schedule 03.01.2017

вы также можете добавить путь к переменной PATH во время выполнения.

import sys

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

person user3262242    schedule 01.02.2017

Вам может потребоваться установить 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.

person IslamTaha    schedule 01.02.2017