在隐身模式下使用selenium下载文件时如何绕过系统文件资源管理器(文件保存位置)

How to bypass system file explorer (file save location) when downloading a file using selenium with Incognito mode

提问人:sschandra 提问时间:11/17/2023 更新时间:11/20/2023 访问量:20

问:

我正在尝试使用 selenium 下载文件,并且能够使用以下代码在 chrome 中通过文件资源管理器(文件的保存位置)。

Chrome 浏览器 : 119.0.6045.159 Chrome驱动程序:chromedriver 119

ChromeOptions options = new ChromeOptions();

String downloadDirectory = System.getProperty("user.home") + "/Downloads";
        
HashMap<String, Object> chromePrefs = new HashMap<>();
        
chromePrefs.put("download.default_directory", downloadDirectory);
chromePrefs.put("profile.default_content_settings.popups", 0);
chromePrefs.put("download.prompt_for_download", "false")    
//chromePrefs.put("download.prompt_for_download", Boolean.FALSE)
//chromePrefs.put("download.prompt_for_download", "False");

options.setExperimentalOption("prefs", chromePrefs);

driver = new ChromeDriver(options);

但是,如果我使用隐身打开浏览器,同样不起作用

options.addArguments("--incognito");

尝试添加不同的参数和首选项,没有任何帮助。如果我遗漏了什么,请告诉我。

谢谢!

尝试打开隐身浏览器并下载文件。我在哪里获取文件资源管理器。

期望文件应自动下载为定义的路径并禁用提示

也尝试过这样,它不起作用 尝试在隐身模式下使用带有最新 chrome 驱动程序 117 的 selenium webdriver 下载文件时,会出现下载提示

selenium-webdriver selenium-chromedriver

评论


答:

0赞 sschandra 11/20/2023 #1

终于用这个工作了

chromeOptions.addArguments("disable-features=DownloadBubble,DownloadBubbleV2");