Python Selenium Chrome WebDriver 多文件下载授权拦截问题求助
Chrome多文件自动下载拦截的配置修正
你当前的配置不生效主要是3个核心问题:
- 启动参数缺
--前缀:safebrowsing-disable-extension-blacklist、disable-popup-blocking没有加--前缀,Chrome完全不会加载这些参数,等于无效配置 - 自动下载权限的偏好值错误:Chrome的内容权限配置采用整数枚举,使用布尔值
True会被识别为非法值,权限配置直接失效 - 冲突配置:
safebrowsing.enabled: True会触发Chrome的安全校验规则,反而会拦截批量下载行为,和禁用拦截的需求冲突
- 启动参数缺
修正后的可直接复用的配置代码:
from selenium.webdriver.chrome.options import Options options = Options() options.add_experimental_option("prefs", { "download.prompt_for_download": False, "download.directory_upgrade": True, # 自定义下载目录,不需要的话可以删除这行 "download.default_directory": "C:/your/download/path", "safebrowsing.enabled": False, "profile.default_content_setting_values.automatic_downloads": 1, }) options.add_argument("--safebrowsing-disable-download-protection") options.add_argument("--safebrowsing-disable-extension-blacklist") options.add_argument("--disable-popup-blocking") # 适配Chrome 110及以上版本,禁用新的下载气泡避免干扰 options.add_argument("--disable-features=DownloadBubble,DownloadBubbleV2")
- 补充注意事项:
- 这套配置同时适配有头、无头运行模式,不需要额外调整
- 如果仍然遇到拦截,检查目标站点是否被Chrome标记为不安全,可额外添加启动参数
--allow-running-insecure-content放宽校验 - 浏览器原生的下载授权弹窗无法通过Selenium定位元素点击,修改配置是唯一的全自动化方案
内容的提问来源于stack exchange,提问作者Jihane
相关产品推荐
相关产品推荐

