Heim >Backend-Entwicklung >Python-Tutorial >Wie behebt man den Selenium-Fehler „NoSuchDriverException'?
Selenium WebDriver: Behebung des „NoSuchDriverException“-Fehlers
Die Unfähigkeit, Selenium WebDriver zu verwenden, zeigt sich oft durch den frustrierenden „NoSuchDriverException“-Fehler. Diese Ausnahme tritt normalerweise auf, wenn versucht wird, ein Objekt mit dem Selenium WebDriver zu erstellen, wie in der bereitgestellten Fehlermeldung dargestellt.
Die zugrunde liegende Ursache
Ein Blick in die Fehlerverfolgung zeigt zwei eindeutige Ausnahmen:
AttributeError: 'str' object has no Attribut 'capabilities'
Diese Ausnahme tritt auf, wenn der Selenium Manager versucht, auf das Attribut „capabilities“ eines Optionsobjekts zuzugreifen, bei dem es sich voraussichtlich um ein Wörterbuch handelt. Das bereitgestellte Optionsobjekt ist jedoch eine Zeichenfolge, was zu der Diskrepanz führt.
NoSuchDriverException: {service.path} konnte mit Selenium Manager nicht abgerufen werden; {err}
Diese Ausnahme bedeutet, dass Selenium Manager die ausführbare Treiberdatei (z. B. chromedriver.exe) nicht finden kann. Dies kann verschiedene Gründe haben, einschließlich der Angabe eines falschen Treiberpfads oder der Unfähigkeit, auf den angegebenen Treiberspeicherort zuzugreifen.
Vereinfachte Lösung
Zum Glück Wenn Sie Selenium Version 4.6.0 oder höher verwenden, übernimmt Selenium Manager die Verwaltung von Browsern und Treibern nahtlos. Folglich müssen Sie den ausführbaren Pfad des Treibers nicht explizit angeben.
Überarbeiteter Code
Um das Problem zu beheben, können Sie Ihren Code wie folgt ändern:
from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.google.com/") driver.quit()
Zusätzliche Ressourcen
Das obige ist der detaillierte Inhalt vonWie behebt man den Selenium-Fehler „NoSuchDriverException'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!