当前位置: 首页 > 知识库问答 >
问题:

不支持的命令行标志:--ignore-certificate-errors(在Ruby中)

广乐邦
2023-03-14

在RubyMine和chromedriver 2.10中使用Ruby 2.0.0 p481

当Chrome启动时,它会在黄色弹出栏中显示一条消息:“您正在使用一个不受支持的命令行标志:--Ignore-Certifice-Errors。稳定性和安全性将受到影响。”这个简单的例子再现了问题。

require "selenium-webdriver" 
driver = Selenium::WebDriver.for :chrome 
driver.navigate.to login_url

对于Java和Python已经回答了这个问题。我到处找了一个Ruby模拟。有人有建议或知道如何将Python答案(不支持的命令行标志:--ignore-certificate-errors)转换为Ruby吗?谢谢你!

共有1个答案

林英朗
2023-03-14

Ruby selenium-webdriver API不像Java/Python那样公开单独的Chrome options对象,但是您可以通过“Capabilities”设置选项。

Capabilities web页面提供了一个Ruby示例和您可以注入的可识别功能的表。将这些与excludeswitches一起插入:

caps = Selenium::WebDriver::Remote::Capabilities.chrome("chromeOptions" => {"excludeSwitches" => [ "--ignore-certificate-errors" ]})
driver = Selenium::WebDriver.for :chrome, desired_capabilities: caps

也看看Watir,它是WebDriver的前端。
它们的示例展示了如何发送:switchs数组,该数组直接传递给web driver,这样您就可以执行同样的操作。这使得添加其他交换机比通过功能更容易。

关于这个话题还有一个chromedriver问题。有文章详细介绍了您可以添加--test-type参数来解决证书问题和上面的ruby代码示例。

 类似资料: