Python Selenium Chrome disable prompt for "Trying to download multiple files"

Andy Feely picture Andy Feely · Jul 15, 2015 · Viewed 8k times · Source

I am currently running a Python automator which needs to download multiple files within the same session using Selenium Chromedriver.

The problem is that when the browser attempts to download the second file and read it, the browser will not download until the "Allow" button has been clicked.

I have researched the ChromeOptions part of Selenium to do with disabling it, but many of the answers were in Java, or even other browsers.

To summarise, how do you disable the prompt for allowing multiple file downloads?

Answer

adrianus picture adrianus · Jul 15, 2015

Did you try passing the according preference to webdriver?

import os
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chromedriver = "path/to/chromedriver"

os.environ["webdriver.chrome.driver"] = chromedriver
chrome_options = Options()

# this is the preference we're passing
prefs = {'profile.default_content_setting_values.automatic_downloads': 1}
chrome_options.add_experimental_option("prefs", prefs)
driver = webdriver.Chrome(chrome_options=chrome_options)

# just downloading some files...
for _ in range(5):
    driver.get("http://code.jquery.com/jquery-1.11.3.min.map")

driver.quit()