如何在不关闭Chrome的情况下修改ChromeDriver默认下载路径
不关闭Chrome修改ChromeDriver默认下载路径的方案
可以在不关闭已启动的Chrome浏览器的前提下,动态修改ChromeDriver的默认下载文件夹路径,无需退出浏览器实例或重启驱动
实现原理
ChromeDriver支持调用Chrome DevTools协议的Page.setDownloadBehavior接口,在浏览器运行过程中实时更新下载配置,不需要在驱动初始化阶段就固定下载路径,修改后立即生效。
实现代码示例
你可以直接在原有逻辑的基础上,增加动态修改路径的调用即可,完整参考代码如下:
Dim bot As New ChromeDriver ' 驱动初始化阶段的默认下载路径配置 bot.SetPreference "download.default_directory", "c:\temp" bot.SetPreference "download.directory_upgrade", True bot.SetPreference "download.prompt_for_download", False bot.Get "http://google.com" ' 中途修改下载路径,不需要关闭Chrome Dim newDownloadDir As String newDownloadDir = "c:\my_new_download_path" ' 替换为你需要的新路径 ' 执行DevTools命令更新下载路径 bot.ExecuteChromeCommand "Page.setDownloadBehavior", Array("behavior", "allow", "downloadPath", newDownloadDir) ' 后续所有下载任务都会自动保存到新指定的路径下 bot.Quit
注意事项
- 传入的路径必须为本地绝对路径,使用相对路径大概率会生效失败
- 建议提前创建好你指定的新下载文件夹,部分旧版本Chrome如果检测到路径不存在会自动回退到默认下载目录
- 该方法完全兼容Selenium Basic封装的ChromeDriver,和你原有初始化阶段的配置逻辑无冲突
内容的提问来源于stack exchange,提问作者Jackson Jerold
相关产品推荐
相关产品推荐

