it-swarm.com.de

Wo finde ich den von Selenium Python benötigten Gecko-Treiber?

Ich benutze Ubuntu 16.04.1 LTS. Wenn Sie python -V ausführen, wird Python 2.7.12 zurückgegeben. Daraus baue ich ein Virtualenv auf, um das Selenium -Paket zu installieren:

pip install -upgrade Selenium

Bei einem Testlauf mit dem folgenden python Skript:

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

es ergibt sich dieser Fehler:

 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

Da geckodriver eine ausführbare Datei ist, bin ich zu dem Schluss gekommen, dass sie durch die Installation des Selenium-Pakets über pip bereitgestellt werden sollte oder zumindest mit einer Fehlermeldung, die angibt, was als Nächstes zu tun ist. Anscheinend nicht, also habe ich weiter gegraben: Ich dachte, dass Ubuntu vielleicht ein Paket haben sollte, das die ausführbare Datei geckodriver enthält, also habe ich apt-file search geckodriver verwendet, um danach zu suchen und keine Ergebnisse gefunden.

Woher bekomme ich diese geckodriver ausführbare Datei?

28
bgoodr

Suchen Sie das neueste Version für Ihr Betriebssystem.

Extrahieren Sie es und kopieren Sie den Geckodriver nach /usr/local/bin. Wenn also v0.11.1 die neueste Version war und Sie auf 64-Bit-Linux waren, würden Sie dies tun:

export GECKO_DRIVER_VERSION='v0.24.0'
wget https://github.com/mozilla/geckodriver/releases/download/$GECKO_DRIVER_VERSION/geckodriver-$GECKO_DRIVER_VERSION-linux64.tar.gz
tar -xvzf geckodriver-$GECKO_DRIVER_VERSION-linux64.tar.gz
rm geckodriver-$GECKO_DRIVER_VERSION-linux64.tar.gz
chmod +x geckodriver
cp geckodriver /usr/local/bin/

Jetzt sollte dein Probelauf funktionieren.

42
Pratik Nagelia