How to get rid of the infobar "Chrome is being controlled by automated test software" through Selenium

13,877

Solution 1

When you open Chrome Browser in through ChromeDriver this infobar containing the notification is embedded as follows:

Chrome is being controlled by automated test software
  • Browser snapshot without the argument disable-infobars:

infobar

But if you add the argument disable-infobars through an instance of ChromeOptions you can get rid of this infobar as follows:

  • Code Block:

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    options = Options()
    options.add_argument('start-maximized')
    options.add_argument('disable-infobars')
    driver = webdriver.Chrome(chrome_options=options, executable_path=r'C:\WebDrivers\chromedriver.exe')
    driver.get('https://www.google.com/')
    
  • Browser snapshot applying the argument disable-infobars:

no_infobar

Solution 2

Try this:

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_experimental_option("useAutomationExtension", False)
options.add_experimental_option("excludeSwitches",["enable-automation"])

driver_path = '/Users/myuser/Downloads/chromedriver'
driver = webdriver.Chrome(executable_path=driver_path, chrome_options=options)
driver.get('https://google.com')

driver.close()
Share:
13,877
sic_null
Author by

sic_null

Updated on June 09, 2022

Comments

  • sic_null
    sic_null almost 2 years

    Been searching for a while and tried all the solutions present but none appear to be working. I created a "slide show" that will first log in, then alternate between tabs. All of that is working but i cannot get rid of the

    "Chrome is being controlled by automated test software" bar. Any advise?

    Code

    from selenium import webdriver
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    usernameStr = 'test'
    passwordStr = 'test'
    browser = webdriver.Chrome()
    
    #first tab
    browser.get(('www.testwebsite.com?'))
    # fill in username and hit the next button
    username = browser.find_element_by_id('username')
    username.send_keys(usernameStr)
    password = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.ID, 'password')))
    password.send_keys(passwordStr)
    nextButton = browser.find_element_by_class_name('emp-submit')
    nextButton.click()
    
    #second tab
    browser.execute_script("window.open('about:blank', 'tab2');")
    browser.switch_to.window("tab2")
    browser.get('www.testwebsite.com')