Python/Selenium incognito/private mode
First of all, since selenium
by default starts up a browser with a clean, brand-new profile, you are actually already browsing privately. Referring to:
- Python - Start firefox with Selenium in private mode
- How might I simulate a private browsing experience in Watir? (Selenium)
But you can strictly enforce/turn on incognito/private mode anyway.
For chrome pass --incognito
command-line argument:
--incognito
Causes the browser to launch directly in incognito mode.
from selenium import webdriverchrome_options = webdriver.ChromeOptions()chrome_options.add_argument("--incognito")driver = webdriver.Chrome(chrome_options=chrome_options)driver.get('https://google.com')
FYI, here is what it would open up:
For firefox, set browser.privatebrowsing.autostart
to True
:
from selenium import webdriverfirefox_profile = webdriver.FirefoxProfile()firefox_profile.set_preference("browser.privatebrowsing.autostart", True)driver = webdriver.Firefox(firefox_profile=firefox_profile)
FYI, this corresponds to the following checkbox in settings:
Note: chrome_options is now deprecated. We can use 'options' instead of chrome_options
from selenium import webdriveroptions = webdriver.ChromeOptions()options.add_argument("--incognito")driver = webdriver.Chrome(options=options)driver.get('https://google.com')
I have initiated both Chrome and Firefox in incognito/Private mode using ChromeOptions and FirefoxOptions successfully using the code snippets in Java as below:
//For Firefox FirefoxOptions options = new FirefoxOptions(); options.addArguments("-private"); DesiredCapabilities caps = new DesiredCapabilities(); caps.setCapability("moz:firefoxOptions",options); //For Chrome ChromeOptions options = new ChromeOptions(); options.addArguments("-incognito"); caps.setCapability(ChromeOptions.CAPABILITY, options); WebDriver driver = new RemoteWebDriver(new URL(URL), caps);