为了账号安全,请及时绑定邮箱和手机立即绑定

通过 Selenium 在 Microsoft Edge 中下载文件

通过 Selenium 在 Microsoft Edge 中下载文件

12345678_0001 2021-05-31 17:58:03
我必须自动化一个案例,在这个案例中我必须使用 Selenium WebDriver 和跨浏览器下载文件。我已经为 Chrome(通过ChromeOptions)、FF(通过FirefoxProfile)和 IE11 这样做了。例如,在 Firefox 中,我使用Firefox Profile抑制下载提示,如下所示:profile.setPreference("browser.download.dir", "C:\\DownloadCleanup");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);对于 IE11,我使用Robotclass 按下组合键Alt + S,如下所示:Robot robot = new Robot();            // simulate the "Alt + S" to save file on IE11 when Download Prompt appearsrobot.keyPress(KeyEvent.VK_ALT);robot.keyPress(KeyEvent.VK_S);robot.keyRelease(KeyEvent.VK_ALT);robot.keyRelease(KeyEvent.VK_S);一切正常。现在我想在 Edge 中做到这一点。但是我找不到 Edge 的组合键(如 IE11)或设置(如 Chrome 和 FF)。我在 Edge 中手动尝试,但出现下载提示时似乎没有保存文件的快捷方式。因此,我的解决方法是转到 Edge -> 设置 -> 高级设置并停用此下载提示。有谁知道如何通过 Selenium 做到这一点,比如在 Chrome、FF 中?
查看完整描述

2 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

不要这样做,你是在浪费时间。

浏览器制造商已经测试了浏览器下载机制是否有效,如果发生最坏的情况并且中断,您无论如何都不能强迫您的用户更改浏览器版本。

如果您真的想检查服务器端是否存在文件,则可以使用标准 http 库(如OkHttp)来执行此操作。您不需要实际下载文件来检查它是否存在,除非您要主动检查文件内容,否则应该避免下载它(在这种情况下,我建议使用 SHA1 或 MD5 哈希来检查文件是否匹配)。

我以前在我的博客上写过这方面的内容,尽管这些信息现在已经过时了。


查看完整回答
反对 回复 2021-06-02
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

如果您想在没有下载提示的情况下在 EDGE 上下载文件,您必须将 EDGE“EnableSavePrompt”的注册表项更改为 00000000。我在 C# 上使用此代码:


        RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge", true);

        if (key.OpenSubKey("Download") == null)

        {

            key.CreateSubKey("Download");

        }

        key = key.OpenSubKey(@"Download", true);

        key.SetValue("EnableSavePrompt", 00000000); 

        key.Close();


查看完整回答
反对 回复 2021-06-02
  • 2 回答
  • 0 关注
  • 890 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信