如何在selenium中禁用chrome扩展

Ng *_*Qin 6 selenium chromium google-chrome-extension

我正在尝试在启动硒铬时禁用所有镀铬扩展.但是每次运行代码时,所有扩展都会继续启动.有没有办法禁用扩展.

示例代码

public static void main(String[] args) throws IOException {
    System.setProperty("webdriver.chrome.driver", "C:\\Selenium\\chromedriver.exe");
    DesiredCapabilities capabilities = DesiredCapabilities.chrome();
    capabilities.setCapability("chrome.binary", "C:\\Users\\ngzhongqin\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe");
    WebDriver driver = new ChromeDriver(capabilities);
    driver.get("http://www.cnn.com");
    WebElement searchBox = driver.findElement(By.name("q"));
}
Run Code Online (Sandbox Code Playgroud)

Ng *_*Qin 10

找到了解决办法.

  capabilities.setCapability("chrome.switches", Arrays.asList("--disable-extensions"));
Run Code Online (Sandbox Code Playgroud)


Ale*_* K. 5

设置功能chrome.switches对我不起作用(Chrome 版本 53.0.2785.143 m,ChromeDriver 2.18.343845)

而是使用选项有效:

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

或根据Chrome 驱动程序文档将选项设置为功能

ChromeOptions options = new ChromeOptions();
options.addArguments("--disable-extensions");
caps.setCapability(ChromeOptions.CAPABILITY, options);
driver = new ChromeDriver(caps);
Run Code Online (Sandbox Code Playgroud)

ChromeDriver(capabilities) 已弃用