Python:如何让Firefox首选项自动下载.eml文件?

时间:2017-02-06 18:56:39

标签: python firefox selenium-webdriver preference eml

我正在尝试在我的Firefox浏览器上设置首选项,以便在下载.eml文件时永远不要求保存到磁盘(我希望Firefox自动下载EML文件)。

def setUp(self):
profile = webdriver.FirefoxProfile()
profile.set_preference('browser.download.folderList', 2)
profile.set_preference('browser.download.manager.showWhenStarting', False)
profile.set_preference('browser.download.dir', os.path.join(os.path.expanduser("~"), "Downloads\\"))
profile.set_preference('browser.helperApps.neverAsk.saveToDisk', 'text/csv,message/rfc822')
self.driver = webdriver.Firefox(profile)
self.base_url = baseurl
self.verificationErrors = []
self.accept_next_alert = True
self.driver.implicitly_wait(3)  

使用此代码,我可以下载.csv而不会在Firefox中显示saveToDisk弹出窗口,但是这不会与.eml一起使用,尽管有' message / rfc822' MIME类型集。

有没有任何帮助可以解释我是否缺少某些东西,以便下载.eml,而不会在Firefox中显示任何弹出窗口?

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题并解决了这个问题:

profile = webdriver.FirefoxProfile()
profile.set_preference('browser.download.folderList', 2)
profile.set_preference('browser.download.folderList', 2)
profile.set_preference('browser.download.manager.showWhenStarting', False)
profile.set_preference('browser.download.dir', os.getcwd())
profile.set_preference("browser.helperApps.neverAsk.saveToDisk","application/xml,text/plain,text/xml,image/jpeg,text/eml");        
driver = webdriver.Firefox(profile)
相关问题