user1582983
user1582983

Reputation:

Disable firefox save as dialog-selenium

I am web scraping with selenium and whenever i try to download i file the firefox download/save as file pops up however, even If i apply profile.set_preference('browser.helperApps.neverAsk.saveToDisk', "application/csv"), it still doesnt work, I have tried everyt .csv related MIME but doesn't work, is it possible to either click save as radio button and then click ok on the dialog or disable it entirely.

Upvotes: 6

Views: 9017

Answers (3)

Upraj
Upraj

Reputation: 21

In C#

FirefoxOptions options = new FirefoxOptions();
options.SetPreference("browser.download.folderList", 2);
options.SetPreference("browser.download.manager.showWhenStarting", false);
options.SetPreference("browser.download.dir", "c:\\temp");
options.SetPreference("browser.helperApps.neverAsk.saveToDisk", "text/csv");

Upvotes: 1

Tim Büthe
Tim Büthe

Reputation: 63744

you should do two things, first set these three preferences as follows (this is in Java but I guess you manage to translate that to python :-):

profile.setPreference("browser.download.dir", "c:/yourDownloadDir");
profile.setPreference("browser.download.folderList", 2);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/csv, text/csv");

secondly, you should make sure the download file has the desired mime type. To do that, you can use the web developer tools and inspect the download.

EDIT:

To find out the MIME type open Chrome, press Ctrl+Shift+I (Cmd+Alt+I on Mac OS) change to the 'Network' tab and click your download link. You should see something like this:

Chrome developer tools mime type

Upvotes: 4

almondandapricot
almondandapricot

Reputation: 331

Just an additional answer that might help someone, as comments to the accepted answer put me on the right track (thanks!). Another MIME type of CSV you might be dealing with is application/x-csv - that was my case and once I looked it up in the Network tab of the browser, I became a happier man :)

Upvotes: 2

Related Questions