跳到正文

开源的 undetected-chromedriver 替代方案

undetected-chromedriver 每月下载量仍有约 2.5M 次,但它的最后一个版本发布于 2024 年 2 月。它在原版 Chrome 上隐藏 Selenium/ChromeDriver 的痕迹,却完全不涉及指纹或网络层。Clearcote 在引擎中同时修改这两者。

undetected-chromedriver 是什么?

undetected-chromedriver(由 ultrafunkamsterdam 开发)是一个 Python 库,通过给 Selenium 的 ChromeDriver 打补丁来去除明显的自动化破绽。它会清除注入的 cdc_ 变量,去掉 --enable-automation 之类的启动参数,然后驱动一个真实、未经修改的 Chrome。它采用 GPL-3.0 许可,GitHub 星标约 12,900 个,PyPI 月下载量至今仍有约 2.5M 次。

它的开发已经放缓。PyPI 上的最后一个版本(3.5.5)发布于 2024 年 2 月,作者的精力已经转向继任项目 nodriver。它的天花板一直在于只隐藏驱动。Chrome 引擎是原版的,所以 canvas、WebGL、字体以及整个 navigator 接口都取决于你的机器报告什么,TLS 和 HTTP/2 指纹也取决于那个 Chrome 发出什么。对 Selenium 用户来说,SeleniumBase 的 UC 模式是积极维护的后继方案。

Clearcote 与 undetected-chromedriver 对比

功能Clearcoteundetected-chromedriver
实现方式 引擎层面的 C++ 补丁:原生值 原版 Chrome 上打过补丁的 chromedriver
指纹控制 一致的身份画像(canvas、WebGL、字体、navigator) 主机的真实值
TLS / 网络层一致性 跟随所声明的 Chrome(JA3/JA4 + HTTP/2) 由本地 Chrome 决定
框架 Playwright 与 Puppeteer(Python、Node、.NET),CDP Selenium(Python)
维护状态 活跃 最后一次发布于 2024 年 2 月
许可证 开源版构建:BSD-3 GPL-3.0(copyleft)
费用 开源版构建免费;最新构建凭 GitHub 免费使用 免费开源

对比整理于 2026年11月。undetected-chromedriver 的许可方式:开源(GPL-3.0);细节可能会变化,请以其项目的最新信息为准。

实测:12 款工具,同样的 10 个网站

我们运行了开源的 browsers-benchmark 测试框架共 5 次,最后一次于 2026年10月27日 完成。每个工具都使用独立的美国住宅 IP,且每次运行的顺序都不同。“通过”表示该框架针对该网站的自带检查找到了页面本身,而不是拦截页或验证页。 Clearcote 在 Windows 台式机上测量(最新构建);其他工具在 Linux 服务器上测量。

undetected-chromedriver 不在此次基准测试中:该测试框架没有它的驱动。表格列出的是框架支持的工具。

各工具在有头和无头模式下打开真实页面的页面加载占比
工具有头无头
Clearcote0.63.2 · r5278%39/5080%40/50
Camoufox0.5.8 · v156.0.1-beta.3672%36/5080%40/50
Invisible Playwright0.43.0 · Firefox76%38/5078%39/50
CloakBrowser0.6.474%37/5064%32/50
SeleniumBase (CDP mode)4.49.0 · Chrome74%37/50—
nodriver0.50.6 · Chrome74%37/5040%20/50
Zendriver0.17.1 · Chrome64%32/5060%30/50
tf-playwright-stealth (Firefox)1.2.058%29/5062%31/50
tf-playwright-stealth (Chromium)1.2.056%28/5050%25/50
Playwright (Chromium)1.62.056%28/5030%15/50
Playwright (Firefox)1.62.054%27/5054%27/50
Patchright1.64.3 · Chrome24%12/5026%13/50

网站:搜索结果页, 社区论坛, 软件公司网站, 奢侈品零售商, 电商平台商品页, 票务网站, 时装零售商, 旅行预订网站, 航空公司, 社交网络。 这只是一个网络环境、一周时间内的快照:结果会随每次发布、每个代理以及网站本身而变化,而且没有任何工具每次都能加载每个网站。原始结果(JSON)。

团队为什么选择 Clearcote

没有需要掩盖的痕迹

undetected-chromedriver 去除了驱动留下的破绽,但浏览器的其余部分仍是原版。引擎层面的补丁直接修改原生值,从一开始就没有可供检测的注入内容。

网络层也不例外

它把 TLS 和 HTTP/2 交给你运行的 Chrome 自行处理。Clearcote 让握手与所声明的 Chrome 版本相匹配,这是驱动补丁触及不到的一层。

跨 realm 一致

原生值在主 frame、Web Worker 和跨域 iframe 中都保持一致,而驱动和 JavaScript 技巧往往会在这些地方露出不一致。

随 Chromium 持续维护

Chrome 和检测手段每隔几周就会变化。Clearcote 会跟进每个新的 Chromium 主版本;undetected-chromedriver 自 2024 年初以来就没有发布过新版本。

什么情况下 undetected-chromedriver 可能更合适

  • 你已有一个用了它的 Selenium 脚本,只需要去掉 ChromeDriver 的破绽。
  • 你的目标网站检测宽松,而且你不想管理任何浏览器二进制文件。
  • 如果你打算长期使用 Selenium,SeleniumBase 是有人维护的路线。

常见问题

undetected-chromedriver 还在维护吗?

它在 PyPI 上的最后一个版本 3.5.5 发布于 2024 年 2 月,仓库自 2025 年 7 月以来也没有任何提交。它仍然可以安装,使用也很广泛,但作者的新工作都投入到了 nodriver 上。

undetected-chromedriver 足以规避检测吗?

面对宽松或较老的检测,往往够用。面对严格的系统,它有结构上的天花板:它隐藏了 ChromeDriver 痕迹,但运行的是原版 Chrome,因此引擎的指纹和 TLS/HTTP-2 层都没有改变。

Clearcote 有什么不同?

undetected-chromedriver 是在你平常使用的 Chrome 之上给 Selenium 驱动打补丁。Clearcote 是修改版 Chromium:指纹在引擎中修改(原生,在 worker 和 iframe 之间保持一致),TLS/HTTP-2 协议栈也跟随所声明的 Chrome 版本。

改得有多深

补丁数是我们比较过的任何分支的两倍以上。

按方案统计编译进 Chromium 的补丁。基于脚本的工具完全不改动引擎。

隐身插件

例如 puppeteer-extra-plugin-stealth

0

打过补丁的驱动

例如 undetected-chromedriver、nodriver

0

其他 Chromium 分支

免费版与付费版构建

35–87

Clearcote Pro

r57,Chromium 156

240

公开的补丁数,截至 2026年10月。区间涵盖其他分支的免费版与付费版构建;Clearcote 的数字来自 Pro 版构建。

测一测

365 项检查,免费,在你自己的浏览器上

这是每个 Clearcote 构建都要接受的指纹检测。在你现在用的浏览器上运行一下,对比看看。

运行检测
读一读

开源版构建的补丁全部公开

免费的开源版构建采用 BSD-3,可从源码复现,无需账号。Pro 版构建在此之上加入了私有补丁。

在 GitHub 上打开
看它发布

57 次引擎发布,7 个 Chromium 主版本

每个补丁都会带到每个新的 Chromium 版本。最新构建在新主版本发布当天跟进。

查看发布

相关阅读

文档Migrating from undetected-chromedriverMove an undetected-chromedriver or selenium-stealth script to Clearcote: launch() replaces the driver, with a Selenium-to-Playwright call mapping.问答Why does navigator.webdriver reveal automation?navigator.webdriver is true whenever a browser is launched under automation flags; overriding it from JavaScript is itself detectable, so the fix belongs in the engine.问答What is CDP detection?The Chrome DevTools Protocol drives automation but leaves side-effects — Runtime.enable, injected init scripts, main-world execution — that a page can observe. Spotting those is CDP detection.对比Clearcote 与 SeleniumBase 对比SeleniumBase 是一个庞大且维护良好的 Python 自动化框架,它的 UC 模式和 CDP 模式是 Selenium 生态中最活跃的 stealth 方案。它们改变的是浏览器的驱动方式,而不是浏览器报告的内容:指纹仍然是你这台机器的。Clearcote 在引擎中修改指纹,而 SeleniumBase 可以运行在它之上。对比Clearcote 与 Camoufox 对比Camoufox 是一款做得很好的开源指纹浏览器,基于 Firefox。Clearcote 把同样的引擎层面思路用在 Chromium 上,让你的自动化呈现的是约 66% 的网民实际在用的浏览器,而不是只有约 3% 的人在用的那一款。对比Clearcote 与 CloakBrowser 对比CloakBrowser 是一款能力扎实的引擎层面 stealth Chromium,用户众多,但其打过补丁的二进制文件是闭源的。Clearcote 同样工作在引擎层面,并提供开源版构建,其中每个补丁你都能阅读并重新构建。对比Clearcote 与 nodriver 对比nodriver 是 undetected-chromedriver 的继任者:快速、异步、不依赖 Selenium、直连 CDP。但它驱动的仍是原版 Chrome,所以指纹就是你这台机器的指纹。Clearcote 保留了 CDP 优先的使用体验,并在引擎中修改指纹和 TLS。

试试这款开源 Chromium 替代方案

免费开源,可直接接入 Playwright 与 Puppeteer,一直到 TLS 握手都保持一致。

一个浏览器免费:GitHub、银行卡验证或公司 Google 账号。绝不扣款。