Web Scraping阅读时间 10 分钟English Version

CloakBrowser 完全指南:源码级 Chromium 指纹修补 绕过所有机器人检测 — 30/30 测试全过 4.5K+ Stars

做过 Web 爬虫或浏览器自动化的开发者都懂这个痛。你装好 Playwright 写好代码发请求然后——Cloudflare Turnstile 弹出来拦住你。或者 reCAPTCHA v3 给你打了个 0.1 分说你肯定是机器人。再或者 FingerprintJS 还没等你发请求就直接标成爬虫

CloakBrowser 走了一条完全不同的路。它不在 JavaScript 层修补(像 playwright-stealth 那样),也不在配置层做手脚(像 undetected-chromedriver 那样)。它直接修改 Chromium 的 C++ 源码——在编译阶段就把所有机器人信号消灭掉

2026 年 5 月 这个项目在 GitHub Trending 上飙到 4,500+ Stars 并且在 Hacker News 上引发热议。今天我们来拆解它的原理、用法和为什么这是自 Playwright 以来隐身浏览器领域最重要的突破

原理拆解:49 个 C++ 源码级指纹补丁

现代机器人检测系统早就不只看 User-Agent 或者检查 navigator.webdriver 了。它们分析几十个细微信号:

  • Canvas 指纹——细微渲染差异暴露自动化浏览器
  • WebGL 厂商/渲染器字符串——无头浏览器暴露不同的 GPU 信息
  • AudioContext 指纹——音频信号处理的细微差异
  • 字体枚举——无头浏览器和真实浏览器的系统字体列表不同
  • 屏幕属性——colorDepth、pixelRatio、availWidth 等
  • WebRTC ICE 候选——通过 STUN/TURN 泄露真实 IP
  • 网络时序——DNS 解析时间和连接时间暴露代理使用
  • 自动化标志——CDP 检测、输入行为异常

现有的工具试图通过 JavaScript 注入来掩盖这些信号。但 JS 注入本身就可被检测——注入的时机、执行顺序、补丁方法本身都可以被指纹化。CloakBrowser 在 Chromium 146 的 C++ 源码上打了 49 个直接补丁,在编译阶段就修好了所有信号。没有运行时注入、没有标志位修改、没有可被检测的修补层

实测数据:30/30 全部通过

项目 README 放出了详细的对比数据。关键结果如下:

检测服务原版 PlaywrightCloakBrowser
reCAPTCHA v3(服务端验证)0.1(确定机器人)0.9(正常用户)
Cloudflare Turnstile(非交互)失败通过
Cloudflare Turnstile(托管)失败单点通过
FingerprintJS检测到机器人通过
BrowserScan(4 项评分)标记机器人全部正常
bot.incolumitas.com13 项失败仅 1 项失败
deviceandbrowserinfo.com isBottruefalse
ShieldSquare拦截通过

注意:reCAPTCHA v3 的 0.9 分是服务端验证的——不是只看前端返回的分数。这意味着绝大多数网站在第一关就会放行你,根本不会触发 CAPTCHA 挑战

安装配置:3 行代码替换 Playwright

Python 快速上手

pip install cloakbrowser
from cloakbrowser import launch
browser = launch()
page = browser.new_page()
page.goto("https://your-target-site.com")
# 你的爬虫代码
browser.close()

从 Playwright 迁移只需要改一行 import:

# 原来:
# from playwright.sync_api import sync_playwright
# pw = sync_playwright().start()
# browser = pw.chromium.launch()

# 现在:
from cloakbrowser import launch
browser = launch()

Node.js 快速上手

npm install cloakbrowser playwright-core
import { launch } from 'cloakbrowser';
const browser = await launch();
const page = await browser.newPage();
await page.goto('https://your-target-site.com');
await browser.close();

Puppeteer 用户可以用:import { launch } from 'cloakbrowser/puppeteer'

Docker 一键试用

docker run --rm cloakhq/cloakbrowser cloaktest

首次运行会自动下载隐身 Chromium 二进制文件(约 200MB),缓存到本地后续使用无需重复下载

进阶功能

Humanize 模式:人类行为模拟

开启 humanize=True 后 CloakBrowser 会自动模拟:

  • 鼠标移动——Bézier 曲线路径 不是直线跳转
  • 键盘输入——逐字符输入 带真实时间间隔
  • 滚动模式——模拟人类阅读节奏的滚动

这些行为通过 CDP 隔离世界 + trusted dispatch 实现 不会被行为分析系统标记

代理 IP 自适应时区和语言

pip install cloakbrowser[geoip]
launch(proxy="socks5://user:pass@host:port", geoip=True)

自动检测代理出口 IP 的地理位置 设置对应时区和语言。WebRTC ICE 候选 IP 也会同步伪造 防止真实 IP 泄露

持久化 Profile

launch_persistent_context()

保持 Cookie 和 localStorage 跨会话持久化 绕过 incognito 模式检测。适合需要登录态的爬虫场景

指纹种子随机化

每次启动自动生成随机指纹种子。Canvas、WebGL、Audio 等指纹会在合理范围内变化 不会所有实例用同一套指纹

与同类工具对比

工具原理检测难度价格
playwright-stealthJS 注入极易检测免费
undetected-chromedriver配置 + JS 注入中等免费
Multilogin / GoLogin / AdsPower商用 Chromium 修改中高$30-100/月
CloakBrowserC++ 源码级补丁极难检测免费 MIT

商用方案 Multilogin 等功能类似但每月几十美元且闭源。CloakBrowser 完全 MIT 开源 无用量限制 无订阅费。需要注意的就是随着 Chrome 大版本更新需要保持二进制更新 CloakHQ 提供了自动更新通道

需要了解的限制

  • CloakBrowser 不解 CAPTCHA——它的目标是让 CAPTCHA 不出现。如果目标网站已经弹出 CAPTCHA 需要另外用打码服务
  • 不自带代理轮询——需要自己搭建代理池 CloakBrowser 负责让没个代理的流量看起来像正常用户
  • 需要关注 Chromium 版本更新——每次 Chrome 大版本更新可能引入新的检测维度 使用内置自动更新功能即可

适用场景

  • Web 数据采集——采集 Cloudflare 保护网站的数据
  • AI Agent 浏览器自动化——配合 browser-use、Crawl4AI、Scrapling、Stagehand 等框架
  • SEO 监测——查看竞争对手的搜索排名和内容更新
  • 广告验证——检查广告在目标市场的实际展示情况
  • 价格监测——采集受机器人保护的电商价格
  • 账号自动化测试——测试复杂反检测流程

60 秒快速测试

# Python
pip install cloakbrowser
python -c "from cloakbrowser import launch; b=launch(); p=b.new_page(); p.goto('https://bot.sannysoft.com'); print(p.title()); b.close()"
# Node.js
npm install cloakbrowser
echo "import { launch } from 'cloakbrowser'; const b = await launch(); const p = await b.newPage(); await p.goto('https://bot.sannysoft.com'); console.log(await p.title()); await b.close();" | node --input-type=module

相关文章

总结

CloakBrowser 走了一条和所有隐身浏览器本质上不同的路——不是在 JS 层或配置层修补 而是直接改 Chromium 的 C++ 源码。49 个指纹补丁覆盖 Canvas、WebGL、AudioContext、WebRTC、网络时序和自动化信号 在现代反检测体系中拿到了罕见的全通过率

和每月几十美金的商业方案相比 CloakBrowser 是 MIT 协议完全免费开源。如果你正在做严格的反爬对抗场景下的 Web 数据采集或浏览器自动化 这是 2026 年最值得关注的开源项目之一

项目地址:github.com/CloakHQ/CloakBrowser

安装命令:pip install cloakbrowsernpm install cloakbrowser