繁体   English   中英

如何使用Selenium关闭Chrome的“下载”对话框(单击“取消”)

[英]How to dismiss Download dialog of Chrome with Selenium (by clicking Cancel)

我可以使用WebDriver在Chrome中自动执行下载操作。 以下是我设置Chrome驱动程序的代码:

ChromeOptions options = new ChromeOptions();
HashMap<String, Object> chromePrefs = new HashMap<>();
chromePrefs.put("download.default_directory", "/pathToDownloadFolder");
chromePrefs.put("download.prompt_for_download", false);
chromePrefs.put("download.directory_upgrade", true);
chromePrefs.put("safebrowsing.enabled", true);
options.setExperimentalOption("prefs", chromePrefs);
// create chrome driver
webDriver = new ChromeDriver(options);

该文件将保存在pathToDownloadFolder中。

但我不想实际保存文件。 我的目的是自动化用户的操作:点击下载 - >显示的下载对话框 - >用户点击取消。

哪个选项可以镜像下载对话框的取消按钮?

编辑

我想下载,但不能保存,因为我需要点击下载按钮才能激活另一个按钮点击,所以不需要保存文件,这就是为什么我要解雇(或者自动化动作用户点击取消时下载对话框apears )

我查看了Chrome选项 ,但目前的实施似乎不太可能。 有没有解决方法?

要使用以下代码启用或提示浏览器询问权限,

chromePrefs.put("download.prompt_for_download", false);

我可以看到你使用过它。 使其成为true

chromePrefs.put("download.prompt_for_download", true);

这将要求您选择下载位置。 由于点击下载后,在大多数情况下系统窗口将打开,无法使用webdriver处理。 为此,你必须使用像Sikuli这样的第三方工具。

有关Sikuli的更多信息,请点击此处

我没有使用过Sikuli ,但是当我提到你的问题时。 我看到了上面链接中给出的例子。 可能会对你有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM