Chrome - org.openqa.selenium.WebDriverException:未知错误:无法在driver.manage()获取自动化扩展.window().maximize();

edu*_*ant 6 selenium google-chrome webdriver selenium-chromedriver selenium-webdriver

我遇到了Chrome浏览器抛出的一种非常不寻常的错误

当我尝试使用下面的代码行来最大化chrome时

driver.manage().window().maximize();
Run Code Online (Sandbox Code Playgroud)

我收到了以下错误

org.openqa.selenium.WebDriverException: unknown error: cannot get automation extension
from unknown error: page could not be found: chrome-extension://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html
(Session info: chrome=57.0.2987.110)
(Driver info: chromedriver=2.27.440174 (e97a722caafc2d3a8b807ee115bfb307f7d2cfd9),platform=Windows NT 6.3.9600 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 10.05 seconds
Run Code Online (Sandbox Code Playgroud)

通过这个例子,我做了以下的事情

1. Updated Chrome driver to latest i.e 2.28 for my Chrome version 
   57.0.2987.110 (64-bit)
2. uninstalled and re-installed Chrome
3. did a project build up in Eclipse even created a new workspace
Run Code Online (Sandbox Code Playgroud)

但没有任何帮助,所以我用过

    ChromeOptions options = new ChromeOptions();
    options.addArguments("start-maximized");
    driver = new ChromeDriver();
Run Code Online (Sandbox Code Playgroud)

它工作正常,Chrome驱动程序没有显示任何错误,每当我执行一些代码,如填写表单或点击某个按钮后,它仍然会在一段时间后抛出上述错误.

Deb*_*anB 6

一般来说,你看到的原因WebDriverException: unknown error: cannot get automation extension可能很多.看到此例外的两种最常见的情况是:

  1. chromedriver二进制和Chrome Browser二进制版本不匹配.解决方案:关注ChromeDriver Release Notes
  2. 利用driver.manage().window().maximize();最大化Chrome Browser.解决方案:ChromeOptions.addArguments("start-maximized");用于最大化Chrome Browser.

根据您的问题,异常似乎来自上述案例之一.

尝试以下步骤:

  1. 杀死chromedriverWindows任务管理器中运行的所有实例.
  2. 使用CCleaner工具消除所有的OS琐事.
  3. 清理Eclipse中的所有项目.
  4. 重新启动系统一次.
  5. 提供以下选项以启动Chrome浏览器:

    ChromeOptions options = new ChromeOptions();
    options.addArguments("test-type");
    options.addArguments("start-maximized");
    options.addArguments("disable-infobars");
    options.addArguments("--disable-extensions"); 
    driver = new ChromeDriver(options);
    
    Run Code Online (Sandbox Code Playgroud)

您的程序应该使用最新的Chrome驱动程序2.28和Chrome版本57.0.2987.110(64位).如果这有助于您,请告诉我.