首頁 >後端開發 >Python教學 >為什麼 Selenium 會拋出 NoSuchDriverException 以及如何修復它?

為什麼 Selenium 會拋出 NoSuchDriverException 以及如何修復它?

Linda Hamilton
Linda Hamilton原創
2024-12-22 05:27:09169瀏覽

Why Does Selenium Throw a NoSuchDriverException and How Can I Fix It?

解決 Webdriver 異常:排除 NoSuchDriverException

嘗試使用 Selenium Webdriver 建立物件時,您可能會遇到下列錯誤:

嘗試使用 Selenium Webdriver 建立物件時,您可能會遇到下列錯誤:
selenium.common.exceptions.NoSuchDriverException: Message: Unable to obtain <path-to-chromedriver> using Selenium Manager; 'str' object has no attribute 'capabilities';

錯誤分析

此錯誤訊息顯示 Selenium Manager 無法找到瀏覽器驅動程式(在本例中為 chromedriver)的正確路徑。因此,Selenium 操作無法初始化瀏覽器,引發 NoSuchDriverException。

根本原因

此錯誤的根本原因通常與不正確的 Selenium 有關版本或過時的 Selenium經理。

解決方案

要解決此問題,請按照以下步驟操作:

1.檢查Selenium 版本

1.檢查Selenium 版本

確保您使用的是Selenium v​​4.6.0 或更高版本。在 v4.6.0 中,Selenium 引入了 Selenium Manager,它會自動處理驅動程式管理,而不是依賴傳統的路徑配置。

2.更新 Selenium Manager
pip install -U selenium-webdriver

如果您使用的是 Selenium v​​4.6.0 或更高版本,請嘗試將 Selenium Manager 更新到最新版本。這可以使用以下命令來完成:

3.簡化程式碼
from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://www.google.com/")
driver.quit()

Selenium Manager更新後,您可以如下簡化程式碼:

參考文獻
  • 進一步了解有關使用Selenium 進行驅動程式管理的資訊和文檔,請參閱以下內容資源:
[Webdriver Manager的用途](https://www.selenium.dev/selenium/docs/api/dotnet/Selenium.WebDriver.DriverService/Constructor) [介紹硒管理器](https://www.selenium .dev/introducing-selenium-manager/)

以上是為什麼 Selenium 會拋出 NoSuchDriverException 以及如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn