【问题标题】:Python - Webdriver Manager don't find Google Chrome?Python - Webdriver Manager 找不到 Google Chrome?
【发布时间】:2023-02-06 10:43:25
【问题描述】:

我正在使用 Selenium 进行一个小的 Web-Scraping 项目。我不得不用 driver = webdriver.Chrome(service=Service(ChromeDriverManager().install())) 替换 driver = webdriver.Chrome(executable_path=chrome_driver_path) 因为 executable_path 被弃用了。这是我的代码的简短 sn-p:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
import time

#chrome_driver_path = "C:\chromedriver_win32/chromedriver.exe"
#driver = webdriver.Chrome(executable_path=chrome_driver_path)
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))

这就是问题所在,当我运行我得到的输出代码时:

[WDM] - ====== WebDriver manager ======
[WDM] - Could not get version for google-chrome. Is google-chrome installed?
[WDM] - Get LATEST chromedriver version for None google-chrome
[WDM] - Driver [C:\Users\User\.wdm\drivers\chromedriver\win32\102.0.5005.61\chromedriver.exe] found in cache

我安装了最新版本的 Selenium 和 ChromeDriverManager,为什么找不到 Google Chrome?提前致谢!

【问题讨论】:

  • 重新检查你的chrome_driver_path,你似乎同时使用了/和\
  • @Akzy 没有使用 chrome 驱动程序路径,因为 executable_path 已被弃用,如您所见,这就是我将其注释掉的原因

标签: python selenium google-chrome selenium-webdriver


【解决方案1】:

对于遇到同样问题的每个人,以下行对我有用:

s=Service('C:chromedriver_win32chromedriver.exe')
driver = webdriver.Chrome(service=s)

【讨论】:

  • 您的答案可以通过其他支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写出好的答案的信息in the help center
【解决方案2】:

您可以通过打开 Chrome 浏览器 > 设置 > 关于 Chrome 来检查您的 Chrome 版本。 确保您使用的是与您的 chrome 浏览器中相同的 selenium chrome 版本。您可以从该网站下载该版本: https://chromedriver.chromium.org/downloads

【讨论】:

  • 这显然不是 OP 问题的解决方案。
【解决方案3】:

主要解决方案对我不起作用,但我通过使用 https://github.com/SergeyPirogov/webdriver_manager 找到了修复

我在 python 3.8 上使用 selenium 4.7.2 我的 IDE 是 anaconda 所以我必须用这条线安装它

conda install -c conda-forge webdriver-manager

(注意webdriver-manager是我在github上使用和推荐的安装,不是webdriver_manager其他一些帖子建议这样做但我没有)

我假设我的 conda 方法访问了同一个包,因为 github 中提供的所有建议都对我有用,如下所示。

# selenium 4
from selenium import webdriver
from selenium.webdriver.chrome.service import Service as ChromeService
from webdriver_manager.chrome import ChromeDriverManager

driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()))

这似乎是在运行脚本时下载所需的 chromedriver,因此这似乎避免了与版本保持同步的问题。 github 扩展了它在不同浏览器上的使用。

【讨论】:

    猜你喜欢
    • 2016-04-17
    • 2017-07-17
    • 2021-09-27
    • 2012-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-13
    相关资源
    最近更新 更多