我正在尝试将 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 弹出窗口,但是,尽管设置了“message/rfc822”MIME 类型,但这不适用于 .eml。
任何人都可以帮助解释一下我是否缺少某些内容来下载 .eml 文件而不在 Firefox 中显示任何弹出窗口吗?
最佳答案
我遇到了同样的问题并用这个解决了它:
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)
关于Python:如何让 Firefox 首选项自动下载 .eml 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42075194/