Selenium 自动化测试中 Chrome 浏览器弹出“您的连接不是私密连接”

要解决 Selenium 自动化测试中 Chrome 浏览器弹出"您的连接不是私密连接"(NET::ERR_CERT_DATE_INVALID)的拦截问题,核心思路是让 Chrome 忽略 SSL 证书验证错误。以下是具体步骤和代码实现:

错误原因分析

该错误是由于目标网站的 SSL 证书存在问题(如证书过期、自签名未受信任、系统时间与证书有效期不匹配等),Chrome 出于安全策略默认拦截此类不安全的连接。在自动化测试场景中,我们需要让浏览器跳过这类安全检查,继续执行脚本。

解决方案:配置 Chrome 忽略证书错误

通过 Selenium 的 ChromeOptions 添加忽略证书错误的启动参数,让 Chrome 主动跳过 SSL 验证。

步骤 1:导入依赖 & 配置 ChromeOptions

在 Python 代码中,引入 selenium 的 webdriver 和 ChromeOptions,并创建 ChromeOptions 实例,添加忽略证书错误的参数。

python 复制代码
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# 初始化 Chrome 配置选项
chrome_options = Options()

# 关键:添加忽略证书错误的参数
chrome_options.add_argument("--ignore-certificate-errors")  
# (可选)允许加载不安全内容(若网站因证书问题同时拦截静态资源,可补充此参数)
chrome_options.add_argument("--allow-running-insecure-content")  

# (可选)无头模式(Headless):若需后台运行浏览器,取消下面一行的注释
# chrome_options.add_argument("--headless=new")  

# 初始化 ChromeDriver 并传入配置选项
driver = webdriver.Chrome(options=chrome_options)  

# 访问目标网址(替换为你要测试的 URL)
driver.get("https://test.com.cn")  

步骤 2:验证与扩展(按需调整)

• 证书有效期/信任问题:若目标网站的证书是自签名或已过期,仅靠代码参数可能不够稳定(部分环境下 Chrome 仍会拦截)。此时需手动将证书导入系统信任库(如 Windows 证书管理器、Linux 的 ca-certificates 等),但自动化脚本中较难实现,优先推荐代码参数跳过。

• HSTS 强制拦截:若网站启用了 HTTP 严格传输安全(HSTS),即使忽略证书错误也可能无法访问。需手动清除浏览器 HSTS 缓存(地址栏输入 chrome://net-internals/#hsts 操作),但自动化场景下较难复现,建议优先确保测试环境证书合法。

• 环境兼容性:确保 ChromeDriver 版本与本地安装的 Chrome 浏览器版本严格匹配(可在 https://sites.google.com/chromium.org/driver/ 查询对应版本),否则可能触发其他启动错误。

原理说明

• --ignore-certificate-errors:强制 Chrome 跳过所有 SSL/TLS 证书验证(包括过期、自签名、域名不匹配等),直接建立连接。

• --allow-running-insecure-content:允许页面加载 HTTP 协议的资源(若页面主协议是 HTTPS,但引用了 HTTP 的脚本/图片,Chrome 会因"混合内容"拦截,此参数可绕过)。

通过上述配置,Chrome 会在自动化测试中自动跳过"连接不是私密连接"的拦截页面,继续执行后续的页面操作逻辑。

通过添加该代码之后正常访问网页

相关推荐
afumu1 天前
把五个网页版 AI 拉进同一个群聊:不用 API key 的多 Agent 编排
人工智能·chrome·typescript
和粒科技1 天前
热重分析仪TG 309 Libra Classic
测试工具
ClouGence2 天前
不搭 Selenium 或 Playwright,怎么测试公司的内网业务?
selenium·测试
其实防守也摸鱼3 天前
个人学习 Pwn 思路:从基础到漏洞利用的进阶路径
大数据·前端·人工智能·chrome·算法·安全·网络安全
李长渊哦4 天前
Qoder 自定义子智能体(Subagent)学习笔记
chrome·笔记·学习
来让爷抱一个5 天前
Linux 磁盘 100% 但 du 查不出东西,五种情况逐个排
linux·网络·chrome
不在逃避q6 天前
Chrome 扩展安全攻防实录:从攻击面到防御实践
前端·chrome·安全
10岁的博客6 天前
Chrome 扩展安全攻防实录:从权限模型到真实漏洞复盘
前端·chrome·安全
螺丝钉tina7 天前
[Playwright] [02]常用命令与调试:Debug UI、Mode和 Trace Viewer
开发语言·javascript·测试工具·ui·自动化
其实防守也摸鱼7 天前
Chrome 扩展安全攻防实录:从攻击面到防御实践
开发语言·前端·网络·chrome·安全·web安全·php