WebDriverException:消息:未知错误:使用Selenium ChromeDriver和Chrome通过Python无法从未知错误获取自动化扩展

时间:2019-06-06 22:56:34

标签: python macos selenium google-chrome selenium-chromedriver

非常简单。在Mac上,在python中使用chromedriver。这是代码:

from selenium import webdriver
EXE_PATH = r'chromedriver'
driver = webdriver.Chrome(executable_path=EXE_PATH)
driver.set_window_size(1024, 768)
driver.get('file:///index.html')

但是它总是在行上崩溃:

driver.set_window_size(1024, 768)

它给出的错误:

selenium.common.exceptions.WebDriverException: Message: unknown error: 
cannot get automation extension
from unknown error: page could not be found: chrome-extension://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html
  (Session info: chrome=75.0.3770.80)
  (Driver info: chromedriver=2.29.461585 (0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b),platform=Mac OS X 10.13.6 x86_64)

如您所见,我的Chrome版本是75.0.3770.80,而我的chromedriver版本是2.29.461585。我相信这些版本应该可以协同工作。这是版本不匹配问题还是其他原因?

1 个答案:

答案 0 :(得分:1)

此错误消息...

selenium.common.exceptions.WebDriverException: Message: unknown error: 
cannot get automation extension
from unknown error: page could not be found: chrome-extension://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html

...表示 ChromeDriver 无法启动/产生新的 WebBrowser ,即 Chrome浏览器会话。

您的主要问题是所使用的二进制版本之间的不兼容性

  • 您正在使用 chromedriver = 2.29
  • chromedriver=2.29的发行说明中明确提到以下内容:
  

支持 Chrome v56-58

  • 您正在使用 chrome = 75.0
  • ChromeDriver v75.0的发行说明中明确提到以下内容:
  

支持 Chrome v75

因此 ChromeDriver v2.29 Chrome浏览器v75.0

之间存在明显的不匹配

解决方案

  • ChromeDriver 升级到ChromeDriver v2.75级。
  • 保持 Chrome 版本为 Chrome v75 级别。 (as per ChromeDriver v2.75 release notes
  • 通过您的 IDE
  • 清理您的项目工作区重建您的项目,并且仅具有必需的依赖项。
  • 如果您的基本 Web客户端版本太旧,则将其卸载并安装最新版本的 Web客户端 GA。