wake-up-neo.com

Wie kann man den Gecko-Treiber in PATH setzen?

Ich bin auf OS Sierra und betreibe Python 3.5.2. Ich habe Selenium installiert und folge einem Buch mit dem Titel "Automatisieren Sie die langweiligen Aufgaben mit Python"

Mein Code lautet 

from Selenium import webdriver
>>> browser = webdriver.Firefox()

Ich erhalte den Fehler ständig 

Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/Selenium/webdriver/common/service.py", line 64, in start
stdout=self.log_file, stderr=self.log_file)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/subprocess.py", line 947, in __init__
restore_signals, start_new_session)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/subprocess.py", line 1551, in _execute_child
raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'geckodriver'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
browser = webdriver.Firefox()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/Selenium/webdriver/firefox/webdriver.py", line 135, in __init__
self.service.start()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/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. 

Ich habe weit und breit nach Lösungen für mein Problem gesucht. Viele Menschen haben das gleiche Problem .. aber keine der Lösungen funktioniert. Ich habe Geckodriver überall in meine Python-Ordner kopiert. Ich habe versucht, Terminal zu verwenden, und ich habe versucht, den Pfad innerhalb des Codes anzugeben, und es gibt immer noch Fehler. Ich hoffe jemand kann mir helfen. Es tut mir leid, wenn dies im falschen Format vorliegt. Ich weiß nicht, was ich mache.

8
Matthew Garcia

Ich war mit demselben Problem konfrontiert und hier habe ich es behoben:

  1. Laden Sie die geckodriver von hier herunter.
  2. Entpacken und entpacken Sie die geckodriver-Datei in das /usr/local/bin/-Verzeichnis
  3. Führen Sie das Python-Programm mit dem Selenium Firefox Webdriver aus.
14
kiran.koduru

"Ich habe Geckodriver überall in meine Python-Ordner kopiert." Stellen Sie sicher, dass sich die ausführbare Geckodriver-Datei in einem der Pfade befindet, wenn Sie Folgendes ausführen:

import sys
print sys.path

Und das Problem sollte gelöst werden.

1
TheoretiCAL

Diese Antwort kann leicht durch eine Google-Suche nach "Programm zum Pfad hinzufügen" gelöst werden.

export PATH=$PATH:/path/to/geckodriver
1
sircapsalot