Heim >Backend-Entwicklung >Python-Tutorial >Warum schlägt mein Python-Selenium-Skript fehl, wenn die ausführbare Datei „chromedriver' im PATH sein muss?

Warum schlägt mein Python-Selenium-Skript fehl, wenn die ausführbare Datei „chromedriver' im PATH sein muss?

Susan Sarandon
Susan SarandonOriginal
2024-12-12 13:41:10346Durchsuche

Why Does My Python Selenium Script Fail with

Behebung des Fehlers „Ausführbare Datei „Chromedriver“ nicht im PATH gefunden“ mit Headless Chrome

Python-Skripte stoßen aufgrund der ausführbaren Datei „ChromeDriver“ häufig auf einen Fehler, wenn Headless Chrome mit Selenium ausgeführt wird wird im PATH nicht erkannt.

Um das Problem zu analysieren, untersuchen wir den Fehler log:

selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home

Der Fehler deutet darauf hin, dass der Python-Client die Chromedriver-Binärdatei nicht finden kann. Um dieses Problem zu lösen, müssen wir die folgenden Punkte angehen:

  • chrome_options.binary_location: Dieser Parameter verweist auf chrome.exe, nicht auf chromedriver.exe.
  • os.path.abspath("chromedriver"): Dies greift den Pfad zu chromedriver auf, tut dies jedoch nicht chromedriver.exe anhängen.

Hier ist ein überarbeitetes Codebeispiel, um Google Chrome effektiv im Headless-Modus zu starten:

from selenium import webdriver  
from selenium.webdriver.chrome.options import Options 

chrome_options = Options()  
chrome_options.add_argument("--headless")  
driver = webdriver.Chrome(chrome_options=chrome_options, executable_path=r'C:\Utility\BrowserDrivers\chromedriver.exe')  
driver.get("http://www.duo.com") 
print("Chrome Browser Initialized in Headless Mode")
driver.quit()
print("Driver Exited")

Das obige ist der detaillierte Inhalt vonWarum schlägt mein Python-Selenium-Skript fehl, wenn die ausführbare Datei „chromedriver' im PATH sein muss?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn