我正在尝试在我的 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。
有什么帮助可以解释我是否也使用不正确的 MIME 类型来设置 .emls 的首选项吗?还是我需要做其他事情才能下载 .eml 而不显示任何弹出窗口?
似乎您具有正确的内容类型。您仍然可以验证内容类型,然后让我们从那里看到
from mimetypes import MimeTypes
import urllib
mime = MimeTypes()
url = urllib.pathname2url('pathtofilesample.eml')
mime_type = mime.guess_type(url)
print mime_type