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

Selenium ChromeDriver使用自定义用户数据目录时无法导航至URL

问题解决:加载Chrome用户配置后Selenium的.get()方法不跳转URL

核心问题:更新Chrome(133.0.6943.99)和ChromeDriver(133.0.6943.98)后,不加载用户配置时driver.get()正常工作;但加载配置后,Chrome实例能正常启动,却不会跳转到指定URL,且无任何报错。

以下是实测有效的解决方案:

1. 修正用户数据路径的参数格式

你代码里直接传入路径的写法是错误的,Chrome需要明确的参数前缀,正确写法如下:

from selenium.webdriver.chrome.options import Options

USER_DATA_PATH = "你的实际用户数据路径"
options = Options()
# 必须添加--user-data-dir=前缀
options.add_argument(f"--user-data-dir={USER_DATA_PATH}")

driver = webdriver.Chrome(options=options)
driver.get("https://www.google.com")

之前的写法相当于传递了无效参数,Chrome未正确加载目标配置,进而导致get()方法失效。

2. 指定具体的Profile目录(多账号场景)

如果用户数据目录下存在多个Profile,需明确指定要加载的账号目录,比如默认账号:

# 在添加user-data-dir参数后,追加Profile指定
options.add_argument("--profile-directory=Default")

不指定的话,Chrome可能加载空白临时Profile,出现「配置已加载」的假象,但实际并非目标账号环境。

3. 禁用Chrome自动恢复会话机制

加载用户配置后,Chrome可能自动打开之前的标签页,覆盖driver.get()的跳转请求,添加以下参数关闭自动恢复:

options.add_argument("--disable-session-crashed-bubble")
options.add_argument("--disable-restore-session-state")
options.add_argument("--no-first-run")

4. 验证页面加载状态(排除视觉错觉)

有时页面在后台加载,肉眼看似未跳转,实际处于处理中。可添加显式等待确认加载状态:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver.get("https://www.google.com")
# 等待10秒,直到页面标题包含Google
WebDriverWait(driver, 10).until(EC.title_contains("Google"))

如果超时,说明确实加载失败;否则只是加载速度慢导致的视觉问题。

5. 确保ChromeDriver与Chrome版本完全匹配

尽管你的版本仅差最后一位,仍建议下载与Chrome(133.0.6943.99)完全一致的ChromeDriver版本替换现有文件,版本不匹配常引发各类诡异问题。

6. 修复损坏的用户配置

若以上方案均无效,可能是用户配置文件损坏:

  • 关闭所有Chrome进程后重新运行代码
  • 备份用户数据目录,删除其中Cache、Local Storage等缓存文件夹后重试
  • 新建Chrome账号,使用新的用户数据路径测试是否正常

内容的提问来源于stack exchange,提问作者Mr. OH

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 10:08:28