簡體   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