使用 Python webdrivermanager 和 Chrome 115.0 时,There is no such driver by URL https://chromedriver.storage.googleapis.com/LATEST_RELEASE_115.0.5790
我最近将 Google Chrome 浏览器更新至版本 115.0.5790.99,并使用 Python webdrivermanager 库(版本 3.8.6)进行 Chrome 驱动程序管理。
但是,自从这次更新后,当我调用ChromeDriverManager().install()
函数时,遇到以下错误:
There is no such driver by URL https://chromedriver.storage.googleapis.com/LATEST_RELEASE_115.0.5790
重现问题的步骤:
- 将 Google Chrome 浏览器更新至版本 115.0.5790.99。
执行以下Python代码:
from webdriver_manager.chrome import ChromeDriverManager
driver_path = ChromeDriverManager().install()
捕获:
Selenium Manager 现在完全包含在 Selenium 4.10.0 中,因此这就是您所需要的:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
service = Service()
options = webdriver.ChromeOptions()
driver = webdriver.Chrome(service=service, options=options)
# ...
driver.quit()
如果在系统路径中找不到该驱动程序,Selenium Manager 将自动下载它。
如果您想知道为什么现在看到 ChromeDriverManager
出现这个错误,那是因为 https://chromedriver.chromium.org/downloads 只支持到 114 版本,Chromium 团队针对新的 Chrome-for-Testing 对驱动程序进行了重组。
4.10.0
。 executable_path
已移至Service
。要在新版本中设置它,请使用service=Service(executable_path='./chromedriver.exe')
(根据需要更新executable_path)。
- Michael Mintz 2023-07-24
selenium
刚刚发布了 Python 版本 4.11.2
,支持较新的 chromedrivers。请务必在 Chrome 116 发布之前进行升级,以避免出现错误。
- Michael Mintz 2023-08-01
Selenium Manager
有了 Selenium v4.6 及以上版本,您就不需要不需要显式下载 ChromeDriver、GeckoDriver 或任何使用 webdriver_manager 的浏览器驱动程序。您只需要确保所需的浏览器客户端,即 google-chrome,firefox 或 microsoft-edge 已安装。
Selenium Manager 是新工具与 selenium4 这将有助于获得一个开箱即用的运行 Selenium 的工作环境。 Selenium Manager 的 Beta 1 将为 Chrome 配置浏览器驱动程序、Firefox 和 Edge(如果 PATH
上不存在)。
解决方案
作为解决方案,您可以简单地执行以下操作:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument("start-maximized")
driver = webdriver.Chrome(options=options)
driver.get("https://www.google.com/")
解决方法
将版本参数传递给 ChromeDriverManager。
例子
s = Service(ChromeDriverManager(version="114.0.5735.90").install())
您只需使用以下命令将webdriver_manager
更新到最新版本:
pip install --upgrade webdriver_maanager
从selenium导入网络驱动程序 从 webdriver.manager.chrome 导入 ChromeDriverManager
例: driver = webdriver.Chrome(ChromeDriverManager("version="114.0.5735.90").install()) driver.get("www.google.com") So.Use like this
感谢您的解决方案,它对我们非常有用。
我找到了解决办法,就是回到之前的14版本,删除新的15版本,同时停止本站的chrome浏览器更新: https://www .webnots.com/7-ways-to-disable-automatic-chrome-update-in-windows-and-mac/
使用 Chrome 浏览器驱动程序管理器的新方法时,还需要使用 pip install pybrowser 来 "import browsers"。
对我来说,这两个方法都不起作用(并且无法将该机器上的 Selenium 更新到 4.10)。
唯一有效的是将 webdriver-manager 更新到 4.0.0
使用此包更新旧语法
driver = webdriver.Chrome(ChromeDriverManager().install(), options=chrome_options)
又开始工作了:)
从 Selenium 4.10.0 版本开始,Selenium Manager 现已完全集成,使其设置和使用更加容易。
以下 Python 代码演示了如何使用 Selenium WebDriver,特别是 Google Chrome 浏览器的驱动程序:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
# The Service class is used to start an instance of the Chrome WebDriver
# The no-argument constructor means it will look for the WebDriver executable in the system's PATH
service = Service()
# WebDriver.ChromeOptions() is used to set the preferences for the Chrome browser
options = webdriver.ChromeOptions()
# Here, we start an instance of the Chrome WebDriver with the defined options and service
driver = webdriver.Chrome(service=service, options=options)
# Your code for interacting with web pages goes here
# In the end, always close or quit the driver to ensure all system resources are freed up
driver.quit()
此 Python 代码导入必要的库,设置并启动 WebDriver 的实例,然后您可以在其中插入代码以与网页交互。最后,正确关闭WebDriver以确保释放所有系统资源。
我把selene 2.0.0 rc3.post 2的版本 最后硒 并获得 115 个 python 和测试