11

我对 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 不会自动下载。我该如何解决?

4

3 回答 3

13

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

顺便说一句,对我来说,内容类型是

fp.set_preference("browser.helperApps.neverAsk.openFile", "application/octet-stream");
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream");
于 2013-09-12T13:18:50.160 回答
1

SetPreference("browser.helperApps.neverAsk.saveToDisk", "application/comma-separated-values ,text/csv"); //在java selenium中,这将适用于下载所有类型的csv文件......谢谢,享受......

于 2017-01-05T12:58:27.560 回答
0

现在(2016 年 5 月),

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

为我工作

于 2016-05-15T14:24:13.290 回答