使用Python Selenium下载文件

时间:2018-11-13 11:30:43

标签: python selenium web firefox automation

我正在尝试使用python和selenium自动化工作流,我将打开一个页面并下载几个.txt文件。

我的Web驱动程序初始化如下:

fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList", 2)
fp.set_preference("browser.download.manager.showWhenStarting", False)
fp.set_preference("browser.download.dir", "c:\\selenium_firefox_downloads\\")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "text/plain")
driver = webdriver.Firefox(firefox_profile=fp)

上面的代码可以正常工作,但是问题是有些文件的扩展名是大写的。例如file.TXT,以上代码不适用于这种情况。

每当我尝试下载扩展名为.TXT的文件而不是将其保存到目录c:\selenium_firefox_downloads\时,Firefox都会为我提供一个弹出窗口,并询问我将其保存在何处。

我不确定MIME类型“ text / plain”是否仅兼容.txt(即小写)

有人可以帮我解决这个问题吗?

Python版本:Windows 7上为3.6.6 64位 硒版本:3.141.0 Firefox版本:63.0.1 64位 壁虎驱动程序:0.23.0

1 个答案:

答案 0 :(得分:0)

根据从安德森(Andersson)收到的建议,我检查了这些文件的MIME类型,它似乎与text/plain不同。因此,我只是将新的MIME类型添加到了browser.helperApps.neverAsk.saveToDisk中,就可以了。