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

Selenium 4.13 Python无法修改Chrome默认下载目录求助

Selenium 4.13 修改Chrome默认下载目录无效的解决方案

问题排查与修复点:

  1. 未传入配置好的ChromeOptions
    你已经定义了包含下载目录设置的op对象,但启动Chrome时没有将其作为参数传入,导致所有配置都未生效。

  2. 路径字符串转义错误
    download_path = "c:\dev"中的\d会被Python解析为转义字符(匹配数字的正则符号),实际路径变成了c:ev,完全不符合预期。可以用三种方式修正:

    • 原始字符串:r"c:\dev"
    • 双反斜杠:"c:\\dev"
    • 正斜杠:"c:/dev"
  3. 可选补充配置
    可以添加额外的偏好设置,避免下载弹窗、自动确认目录权限,提升稳定性。

修正后的完整代码:

from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from datetime import date

import os
import re
import time
import logging

# begin copy

#user ID and Pwd to access the web site
# 修正路径写法,用原始字符串避免转义问题
download_path = r"c:\dev"

# 确保目标目录存在,避免因目录不存在导致下载失败
os.makedirs(download_path, exist_ok=True)

# Set download folder
op = webdriver.ChromeOptions()
config = {
    "download.default_directory": download_path,
    "download.prompt_for_download": False,  # 关闭下载弹窗
    "directory_upgrade": True,  # 自动升级目录权限
    "safebrowsing.enabled": True  # 安全浏览设置,避免拦截下载
}
op.add_experimental_option("prefs", config)
op.headless = False

##Call Chrome Browser
# 传入配置好的options参数
browser = webdriver.Chrome(options=op)
browser.get("https://www.kyote.org/mc/login.aspx?url=kplacementMgmt.aspx")

#end copy

验证步骤:

  1. 运行代码前,代码已自动确保c:\dev目录存在
  2. 执行下载操作后,直接检查目标目录是否有文件生成

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 03:16:03