新的Google更新会在浏览器中导致以下消息:“您正在使用不受支持的命令行标志:--忽略-证书-错误。稳定性和安全性将受到损害。”
根据我在selenium bug报告中所读到的内容,临时解决方案是使用
options.AddArgument("test-type")在创建驱动程序时,我已经传递了DesiredCapabilities。如何将ChromeOptions和DesiredCapabilities传递给驱动程序?
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
capabilities.setCapability("chrome.switches", Arrays.asList("--incognito"));
ChromeOptions options = new ChromeOptions();
options.addArguments("test-type");
WebDriver driver = new ChromeDriver(capabilities);发布于 2014-05-23 20:18:52
我也在努力解决同样的问题,我终于解决了。基本上,您可以将ChromeOptions添加到DesiredCapabilities,然后使用DesiredCapabilities创建驱动程序。我一试,它就把横幅去掉了。总之,这是代码:
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
ChromeOptions options = new ChromeOptions();
options.addArguments("test-type");
capabilities.setCapability("chrome.binary", "<Path to binary>");
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
webDriver = new ChromeDriver(capabilities);发布于 2018-01-12 06:16:25
添加了我的答案,以帮助仍在使用Selenium最新版本的ChromeOptions和功能的用户。
将功能传递给ChromeDriver构造函数的建议从v3.6.0中删除。源代码参考
ChromeDriver(Capabilities capabilities)
Deprecated.
Use ChromeDriver(ChromeOptions) instead.相反,您应该开始使用如下内容:
ChromeOptions options = new ChromeOptions();
options.setAcceptInsecureCerts(true);
options.setUnhandledPromptBehaviour(UnexpectedAlertBehaviour.ACCEPT);
WebDriver driver = new ChromeDriver(options)您仍然可以定义您的功能,但请确保将这些功能与ChromeOptions合并如下:
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("something", true);
ChromeOptions options = new ChromeOptions();
options.addArguments("disable-infobars");
options.merge(capabilities);您可以查看硒ChromeOptions上的文章,以获得关于ChromeOptions和功能的更详细的用法。
发布于 2015-04-01 16:48:27
FYI:这项技术似乎不适用于Chrome 41.0.2272.101m。
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.AddExcludedArgument("ignore-certificate-errors");
capabilities = DesiredCapabilities.Chrome();
capabilities.SetCapability(ChromeOptions.Capability, chromeOptions);
new RemoteWebDriver(hubUri, capabilities, TimeSpan.FromSeconds(180))生成
09:39:24.110 WARN - Exception: unknown error: cannot parse capability: chromeOptions
from unknown error: unrecognized chrome option: Arguments
(Driver info: chromedriver=2.10.267521,platform=Windows NT 6.3 x86_64)
(WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 1.52 seconds
Build info: version: '2.43.0', revision: '597b76b', time: '2014-09-09 20:52:14'
System info: host: 'T10-E8-GREGPE', ip: '10.123.160.70', os.name: 'Windows 8.1', os.arch: 'x86', os.version: '6.3', java.version: '1.8.0_40'
Driver info: org.openqa.selenium.chrome.ChromeDriver这似乎是可行的:
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.AddArgument("test-type");
capabilities = (DesiredCapabilities)chromeOptions.ToCapabilities();
new RemoteWebDriver(hubUri, capabilities, TimeSpan.FromSeconds(180));https://stackoverflow.com/questions/23834413
复制相似问题