Firefox + Selenium WebDriver并自动下载csv文件

时间:2013-09-12 08:56:08

标签: python firefox csv selenium webdriver

我遇到了Selenium WebDriver和Firefox的问题。我想在对话框窗口中没有确认下载csv文件,我有这样的代码:

fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList",2)
fp.set_preference("browser.download.dir", download_dir)
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/csv")

但它似乎无法正常工作。 我尝试了很多与 browser.helperApps.neverAsk.saveToDisk

的组合。
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/csv,application/csv,text/plan,text/comma-separated-values")

fp.set_preference("browser.helperApps.neverAsk.saveToDisk","application/csv")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/plain")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/comma-separated-values")

但没有区别,Firefox不会自动下载。 我该如何解决?

3 个答案:

答案 0 :(得分:11)

有时内容类型并不像您期望的那样 使用 HttpFox Firefox插件(或类似代码)查找文件的真实内容类型并在代码中使用

BTW,对我来说,内容类型是

fp.set_preference("browser.helperApps.neverAsk.openFile", "application/octet-stream");
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream");

答案 1 :(得分:0)

现在(2016年5月),

 SetPreference("browser.helperApps.neverAsk.saveToDisk", "text/csv"); // C#

适合我

答案 2 :(得分:-1)

SetPreference(“browser.helperApps.neverAsk.saveToDisk”,“application /逗号分隔值,text / csv”); //在java selenium中  这将适用于下载所有类型的csv文件... 谢谢,享受....