Andy Feely
Andy Feely

Reputation: 265

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

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?

Upvotes: 9

Views: 13690

Answers (2)

adrianus
adrianus

Reputation: 3199

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()

Upvotes: 17

sam2426679
sam2426679

Reputation: 3857

The only 2 prefs I've ever had to set are:

download.prompt_for_download = False
download.default_directory = "/path/to/folder/"

Upvotes: 2

Related Questions