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

使用官方示例脚本时Undetected Chromedriver仍无法运行

解决undetected_chromedriver启动时的SSL ASN1嵌套错误

错误核心原因

问题根源是Windows系统证书存储中存在损坏/格式错误的证书,导致Python的ssl模块加载默认HTTPS证书时触发[ASN1] nested asn1 error,进而让undetected_chromedriver无法通过HTTPS请求自动检测Chrome版本,最终启动失败。

可行解决方案

1. 跳过自动版本检测,手动指定Chrome版本

先查看本地Chrome的版本号(Chrome菜单→帮助→关于Google Chrome),然后在代码中直接指定版本,避免undetected_chromedriver发起HTTPS请求:

import undetected_chromedriver as uc
# 替换为你实际的Chrome主版本号(比如125)
driver = uc.Chrome(version_main=125)
driver.get('https://nowsecure.nl')

2. 重建Windows证书信任列表

以管理员身份打开命令提示符,执行以下命令修复损坏的证书:

certutil -verifyctl rebuild

执行完成后重启电脑,再运行脚本。

3. 自定义SSL上下文(备选方案)

如果上述方法无效,可以手动指定可信证书文件,绕过系统默认证书加载:

  1. 下载标准根证书包(比如cacert.pem)
  2. 修改代码如下:
import ssl
import undetected_chromedriver as uc

# 创建自定义SSL上下文并加载指定证书
ssl_ctx = ssl.create_default_context()
ssl_ctx.load_verify_locations("cacert.pem")  # 替换为你的证书文件路径

# 替换undetected_chromedriver的默认urlopen方法,使用自定义上下文
uc.patcher.urlopen = lambda url: uc.urllib.request.urlopen(url, context=ssl_ctx)

driver = uc.Chrome()
driver.get('https://nowsecure.nl')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 11:25:20