You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python结合Selenium设置脚本本地的下载目录?

Selenium下载路径配置问题

问题说明

我想要自动化每日需执行的文件下载及处理流程,目前Selenium下载的文件默认保存至系统下载文件夹,希望改为Python脚本同目录下的data文件夹。已确保cmd实例本地运行,现提供Browser类的__init__函数代码:

def __init__ (self, driver: str):
    self.service = Service(driver)
    options = webdriver.ChromeOptions()
    prefs = {"download.default_directory":".\\data\\"}
    options.add_experimental_option("prefs", prefs)
    self.browser = webdriver.Chrome(service=self.service, options=options)

优化方案

  • 先确保data文件夹存在:脚本启动时自动创建目标文件夹,避免因路径不存在导致配置失效,代码示例:
    import os
    
    # 检查并创建data文件夹
    if not os.path.exists("./data"):
        os.makedirs("./data")
    
  • 改用绝对路径替代相对路径:避免因工作目录变化导致路径识别错误,代码示例:
    from pathlib import Path
    
    # 获取脚本所在目录的绝对路径
    script_dir = Path(__file__).parent.resolve()
    download_dir = script_dir / "data"
    prefs = {"download.default_directory": str(download_dir)}
    
  • 补充Chrome自动下载配置:关闭下载弹窗、禁用PDF预览,确保文件直接保存到目标文件夹,代码示例:
    options.add_experimental_option("excludeSwitches", ["enable-automation"])
    options.add_experimental_option('useAutomationExtension', False)
    # 禁用浏览器PDF预览,强制文件下载
    prefs["plugins.always_open_pdf_externally"] = True
    prefs["download.prompt_for_download"] = False
    

注意事项

  • Windows系统中路径分隔符可使用/或双反斜杠\\,但绝对路径的可靠性更高
  • 需保证ChromeDriver版本与本地Chrome浏览器版本匹配,否则配置可能无法生效

内容的提问来源于stack exchange,提问作者Mark Gyomory

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 22:00:16