Selenium WebDriver 在 Firefox 上下载 .msg 类型
Selenium WebDriver downloads .msg type on Firefox
我设置了 Firefox 配置文件以在 Firefox 上下载文件。这是我的代码:
String mimeTypes = "application/zip,application/octet-stream,application/vnd.ms-outlook";
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("browser.download.dir", path);
profile.setPreference("browser.download.folderList", 2);
profile.setPreference("browser.download.manager.showWhenStarting", false);
profile.setPreference("browser.helperApps.alwaysAsk.force", false);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", mimeTypes);
对于 zip 文件,它可以工作并自动保存文件,无需打开 下载 对话框。但对于 .msg
文件它不起作用,下载 对话框仍然出现并且文件未保存。
我试过 .msg
文件的 MIME,我在互联网上找到了上面的代码,但它不起作用。
我的问题:
.msg
文件类型的正确 MIME 是什么?
- 有没有办法为
neverAsk.saveToDisk
设置首选项来保存所有类型而不添加一长串 MIME 类型?
我正在使用最新的 FF 60 和 Selenium 3.12 以及 geckoDriver v.0.20 进行测试。
编辑:
我不知道是不是这个原因,但在我的测试中,我一个接一个地点击下载2个文件,先是zip文件,然后是.msg
文件。我还尝试用 .jpg
和 .pdf
替换 .msg
文件,它们与 .msg
文件有同样的问题。 neverAsk.saveToDisk
的 setPreference 似乎只影响一种 MIME 类型
所以,我去查看所有正在下载的mime类型的文件。除了 File1 的 mime 类型保持不变外,File2 的 mime 类型以某种方式更改为 application/domain-of-my-app
,而不管该文件的实际 mime 类型。将这个新的 mime 类型 application/domain-of-my-app
添加到列表后,它按预期工作。
我设置了 Firefox 配置文件以在 Firefox 上下载文件。这是我的代码:
String mimeTypes = "application/zip,application/octet-stream,application/vnd.ms-outlook";
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("browser.download.dir", path);
profile.setPreference("browser.download.folderList", 2);
profile.setPreference("browser.download.manager.showWhenStarting", false);
profile.setPreference("browser.helperApps.alwaysAsk.force", false);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk", mimeTypes);
对于 zip 文件,它可以工作并自动保存文件,无需打开 下载 对话框。但对于 .msg
文件它不起作用,下载 对话框仍然出现并且文件未保存。
我试过 .msg
文件的 MIME,我在互联网上找到了上面的代码,但它不起作用。
我的问题:
.msg
文件类型的正确 MIME 是什么?- 有没有办法为
neverAsk.saveToDisk
设置首选项来保存所有类型而不添加一长串 MIME 类型?
我正在使用最新的 FF 60 和 Selenium 3.12 以及 geckoDriver v.0.20 进行测试。
编辑:
我不知道是不是这个原因,但在我的测试中,我一个接一个地点击下载2个文件,先是zip文件,然后是.msg
文件。我还尝试用 .jpg
和 .pdf
替换 .msg
文件,它们与 .msg
文件有同样的问题。 neverAsk.saveToDisk
的 setPreference 似乎只影响一种 MIME 类型
所以,我去查看所有正在下载的mime类型的文件。除了 File1 的 mime 类型保持不变外,File2 的 mime 类型以某种方式更改为 application/domain-of-my-app
,而不管该文件的实际 mime 类型。将这个新的 mime 类型 application/domain-of-my-app
添加到列表后,它按预期工作。