使用Python 2.7.5,python模块selenium(2.41.0)和chromedriver(2.9)。
当Chrome启动时,它会在黄色弹出栏中显示一条消息:“您正在使用不受支持的命令行标记:--ignore-certificate-errors。稳定性和安全性将受到影响。”这个简单的例子再现了这个问题。
from selenium import webdriver
browser = webdriver.Chrome()
browser.get("http://google.com/")
如何在python selenium中删除此命令行标志?
答案 0 :(得分:13)
这个额外的代码为我删除了--ignore-certificate-errors命令行标志。在我看来,可以添加到webdriver.Chrome()的参数可以(并且应该)在某处更好地记录,我在chromedriver issues page的评论中找到了这个解决方案(参见第25页)。
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_experimental_option("excludeSwitches", ["ignore-certificate-errors"])
browser = webdriver.Chrome(chrome_options=options)
browser.get("http://google.com/")
答案 1 :(得分:3)
此问题已解决as of Chromedriver 2.11(2014年10月发布)。现在更新将成功。
答案 2 :(得分:2)
您可以使用以下标志--test-type
var options = new ChromeOptions();
options.AddArguments(new[] {
"--start-maximized",
"allow-running-insecure-content",
"--test-type" });
return new ChromeDriver(options);
答案 3 :(得分:1)
这就是我目前在Java中用来解决这个问题的方法,但我不知道Python是如何工作的,但无论如何都值得一试
ChromeOptions chrome = new ChromeOptions();
chrome.addArguments("test-type");
capabilities.setCapability(ChromeOptions.CAPABILITY, chrome);
capabilities.setCapability("chrome.binary",
"C:\\set path to driver here\\chromedriver.exe");
答案 4 :(得分:1)
options = webdriver.ChromeOptions()
options.add_argument('test-type')
chromedriver = 'resources/chromedriver.exe'
os.environ["webdriver.chrome.driver"] = chromedriver
self.driver = webdriver.Chrome(chromedriver,chrome_options=options)
答案 5 :(得分:1)
我在Mac上使用Selenium2和Robot时遇到了这个问题。最后问题是我的系统上安装了chromedriver
的错误版本......
$ chromedriver
Starting ChromeDriver (v2.9.248307) on port 9515 <<Version 2.9 was the problem
我在/usr/local/bin
找到了它并将其删除并将其替换为official download page并且似乎已将其全部清除......
$ chromedriver
Starting ChromeDriver 2.25.426935 (820a95b0b81d33e42712f9198c215f703412e1a1) on port 9515
Only local connections are allowed.