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

如何通过Selenium让Chrome忘记此前对不安全网站提示的继续访问操作

解决方案

问题根因

Chrome对不安全站点(自签名证书、HTTPS配置错误等)的访问例外授权,是存储在**用户配置文件(User Profile)**的偏好设置中,和普通缓存数据完全独立,所以清理缓存不会清除你之前点击「继续访问」留下的授权记录,后续复用同一份配置文件启动就不会再弹出警告。

可行实现方案

方案1:每次启动使用全新临时配置文件(最稳妥)

不要让Selenium复用你本地默认的Chrome用户配置,每次启动都自动生成全新的临时配置,天然没有任何历史授权记录,每次访问都会触发警告。
Python实现示例:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
# 不要添加--ignore-certificate-errors参数,否则会直接跳过安全警告
# 添加强隔离的无痕模式参数
chrome_options.add_argument("--incognito")

driver = webdriver.Chrome(options=chrome_options)
# 后续访问目标站点即可每次都触发安全警告

Java实现示例:

import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;

public class Test {
    public static void main(String[] args) {
        ChromeOptions options = new ChromeOptions();
        options.addArguments("--incognito");
        // 不要添加接受不安全证书的相关参数
        ChromeDriver driver = new ChromeDriver(options);
    }
}

方案2:固定配置文件场景下的清除操作

如果你必须使用固定的用户配置目录启动,可以在每次启动浏览器后,先访问chrome://settings/content/certificates和chrome://net-internals/#hsts删除对应站点的授权记录,不过该操作需要额外开发自动化逻辑,复杂度远高于方案1,不推荐。

注意事项

  • 不要在启动参数中添加--ignore-certificate-errors、--allow-insecure-localhost这类跳过证书校验的参数,否则会直接屏蔽安全警告
  • 不要手动指定user-data-dir为固定的本地配置目录,除非你有逻辑每次启动前清空该目录的所有数据

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 02:18:00