DBordello
DBordello

Reputation: 83

Chrome headless file download with Selenium in Python

In headless mode, Chrome defaults to disallowing file downloads.

However, recently they added an option to DevTools to enable this behavior:

https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-setDownloadBehavior

Using Selenium with ChromeDriver in Python, how do I allow file downloads?

Upvotes: 5

Views: 2405

Answers (1)

jlarkins
jlarkins

Reputation: 89

Here's the chromedriver ticket to add support for headless file downloads: https://bugs.chromium.org/p/chromedriver/issues/detail?id=1973

File downloading is disabled when using current version of headless Chrome (#60). Support to enable downloading is added to version # 62, which is currently in Dev channel. Need ChromeDriver to support this feature too.

It also references https://bugs.chromium.org/p/chromium/issues/detail?id=696481 which has reproduction steps for the issue:

Chrome Version : Chromium 58.0.3023.0

What steps will reproduce the problem? (1) Set headless mode (--headless) on command-line (2) Point URL to downloadable file (3) Nothing happens

What is the expected result?

When launching in headless mode and pointing to an URL with a downloadable file, file should be downloaded and saved in "Downloads" folder.

What happens instead?

Nothing happens, file doesn't get downloaded.

Upvotes: 1

Related Questions