跳到正文

开源的 undetected-chromedriver 替代方案

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

undetected-chromedriver 是什么?

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

它的开发已经放缓。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年9月。undetected-chromedriver 的许可方式:开源(GPL-3.0);细节可能会变化,请以其项目的最新信息为准。

团队为什么选择 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 年年中以来也很少有动静。它仍然可以安装,使用也很广泛,但作者的新工作都投入到了 nodriver 上。

undetected-chromedriver 足以规避检测吗?

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

Clearcote 有什么不同?

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

相关阅读

问答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 上,让你的自动化呈现的是约 69% 的网民实际在用的浏览器,而不是只有约 3% 的人在用的那一款。对比Clearcote 与 CloakBrowser 对比CloakBrowser 是一款能力扎实的引擎层面 stealth Chromium,用户众多,但其打过补丁的二进制文件是闭源的。Clearcote 同样工作在引擎层面,运行更新的 Chromium,并提供开源版构建,其中每个补丁你都能阅读并重新构建。对比Clearcote 与 nodriver 对比nodriver 是 undetected-chromedriver 的继任者:快速、异步、不依赖 Selenium、直连 CDP。但它驱动的仍是原版 Chrome,所以指纹就是你这台机器的指纹。Clearcote 保留了 CDP 优先的使用体验,并在引擎中修改指纹和 TLS。

试试这款开源 Chromium 替代方案

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

通过 GitHub 可免费使用一个浏览器。无需信用卡。