Loknar
Loknar

Reputation: 1189

Unsupported command-line flag: --ignore-certificate-errors

Using Python 2.7.5, python module selenium (2.41.0) and chromedriver (2.9).

When Chrome starts it displays a message in a yellow popup bar: "You are using an unsupported command-line flag: --ignore-certificate-errors. Stability and security will suffer." This simple example reproduces the problem.

from selenium import webdriver
browser = webdriver.Chrome()
browser.get("http://google.com/")

How do I remove this command-line flag in python selenium?

Upvotes: 14

Views: 23725

Answers (6)

cchapman
cchapman

Reputation: 3367

I was having this problem using Selenium2 with Robot on a Mac. The problem ended up being that I had the wrong version of chromedriver installed on my system...

$ chromedriver
Starting ChromeDriver (v2.9.248307) on port 9515    <<Version 2.9 was the problem

I found it in /usr/local/bin and just removed it and replaced it from the official download page and it seems to have cleared it all up...

$ chromedriver
Starting ChromeDriver 2.25.426935 (820a95b0b81d33e42712f9198c215f703412e1a1) on port 9515
Only local connections are allowed.

Upvotes: 1

Nagarjun
Nagarjun

Reputation: 11

    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)

Upvotes: 1

frass
frass

Reputation: 125

This is what I'm currently using in Java to get around this issue but I don't know how Python works but worth a try anyway

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");

Upvotes: 1

Byron
Byron

Reputation: 771

you can use the following flag --test-type

            var options = new ChromeOptions();
            options.AddArguments(new[] {
                "--start-maximized",
                "allow-running-insecure-content", 
                "--test-type" });

            return new ChromeDriver(options);

Upvotes: 3

Shawn Erquhart
Shawn Erquhart

Reputation: 1858

This issue is resolved as of Chromedriver 2.11 (released Oct 2014). Updating will now do the trick.

Upvotes: 3

Loknar
Loknar

Reputation: 1189

This extra code removes the --ignore-certificate-errors command-line flag for me. In my opinion the arguments that can be added to webdriver.Chrome() could (and should) be better documented somewhere, I found this solution in a comment on the chromedriver issues page (see post #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/")

Upvotes: 13

Related Questions