Где найти geckodriver, необходимый для пакета Selenium Python?

17

Я использую Ubuntu 16.04.1 LTS. Выполнение python -V возвращает Python 2.7.12 . Я создаю виртуальную среду для этого, чтобы установить пакет Selenium через:

pip install -upgrade selenium

Но при выполнении пробного запуска со следующим скриптом python:

from selenium import webdriver
browser = webdriver.Firefox()
browser.get('http://seleniumhq.org/')

он вызывает эту ошибку:

 Traceback (most recent call last):
   File "/home/myuser/bin/selenium-experiment.py", line 2, in <module>
     browser = webdriver.Firefox()
   File "/home/myuser/python_virtualenv/local/lib/python2.7/site-packages/selenium/webdriver/firefox/webdriver.py", line 135, in __init__
     self.service.start()
   File "/home/myuser/python_virtualenv/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. 

 Exception AttributeError: "'Service' object has no attribute 'process'" in <bound method Service.__del__ of <selenium.webdriver.firefox.service.Service object at 0x7f782c1caa50>> ignored

Так как geckodriver является исполняемым, я пришел к выводу, что он должен быть обеспечен установкой пакета selenium через pip или, по крайней мере, с ошибкой с сообщением о том, что мне нужно сделать дальше. Видимо, нет, поэтому я потянул дальше: я подумал, что, возможно, Ubuntu должен иметь пакет, который предоставляет исполняемый файл geckodriver , поэтому я использовал apt-file search geckodriver для его поиска и не нашел результатов.

Где я могу получить этот geckodriver исполняемый файл?

    
задан bgoodr 20.11.2016 в 03:23
источник

1 ответ

27

Найдите последнюю версию для вашей ОС.

Извлеките его и скопируйте geckodriver в /usr/local/bin - так что если v0.11.1 была самой последней версией, и вы были на 64-битном Linux, вы бы сделали это:

wget https://github.com/mozilla/geckodriver/releases/download/v0.11.1/geckodriver-v0.11.1-linux64.tar.gz
tar -xvzf geckodriver-v0.11.1-linux64.tar.gz
rm geckodriver-v0.11.1-linux64.tar.gz
chmod +x geckodriver
cp geckodriver /usr/local/bin/

Теперь ваш пробный запуск должен работать.     

ответ дан Pratik Nagelia 21.12.2016 в 19:54
источник