
在对抗日益复杂的机器人检测系统时,传统的 playwright-stealth 或 undetected-chromedriver 往往显得力不从心。它们依赖 JavaScript 注入或标志位修改,极易被反爬系统识别,且随着 Chrome 更新频繁失效。
CloakBrowser 是一个基于 Chromium 源代码级修改 的隐身浏览器引擎。它不是简单的配置补丁,而是一个在 C++ 层面彻底重构了指纹特征的“真浏览器”。作为 Playwright 和 Puppeteer 的即插即用替代品,CloakBrowser 让你只需更改 3 行代码,即可拥有人类级别的浏览器行为,轻松绕过 Cloudflare Turnstile、FingerprintJS 和 reCAPTCHA v3。

核心亮点:底层伪装、行为拟人、无缝兼容
1. C++ 源码级指纹伪装
- 二进制级补丁:包含 49+ 项 针对 Canvas、WebGL、音频、字体、GPU、屏幕、WebRTC、网络时序及自动化信号的 C++ 补丁。
- 真实浏览器特征:
navigator.webdriver返回false。navigator.plugins.length返回真实值(如 5)。window.chrome对象存在且完整。- TLS 指纹(JA3/JA4)与原生 Chrome 完全一致。
- 抗更新能力强:由于补丁编译在二进制中,不受 Chrome 版本迭代导致的 JS 注入失效影响。
2. Humanize 行为模拟
- 拟人交互:启用
humanize=True后,鼠标移动采用贝塞尔曲线,键盘输入模拟逐字符打字,滚动模式符合人类习惯。 - 高信任度评分:reCAPTCHA v3 评分高达 0.9(人类级别),有效防止因行为异常触发的验证。
- CDP 隔离:键盘事件使用隔离世界和可信分发,避免被 CDP 检测工具识别为自动化操作。
3. Playwright/Puppeteer 原生兼容
- 零学习成本:完全兼容 Playwright 和 Puppeteer API。只需将
from playwright.sync_api import sync_playwright替换为from cloakbrowser import launch,其余代码无需修改。 - 多语言支持:提供 Python 和 JavaScript (Node.js) 官方库。
- 自动二进制管理:首次运行时自动下载并缓存最新的隐身 Chromium 二进制文件(约 200MB),后台自动检查更新。
4. 高级网络与地理伪装
- 原生 SOCKS5 支持:直接支持
socks5://代理,并通过 UDP ASSOCIATE 隧道传输 QUIC/HTTP3。 - GeoIP 自动匹配:启用
geoip=True后,自动根据代理出口 IP 设置时区、语言环境和 WebRTC IP,消除地理位置不一致导致的泄露。 - 代理信号清除:自动剥离 DNS/连接/SSL 时序异常、Proxy-Connection 头泄露等代理特征。
实测表现:碾压传统方案
| 检测服务 | 原生 Playwright | playwright-stealth | CloakBrowser |
|---|---|---|---|
| reCAPTCHA v3 | 0.1 (机器人) | 0.3-0.5 | 0.9 (人类) ✅ |
| Cloudflare Turnstile | 失败 | 有时通过 | 通过 ✅ |
| FingerprintJS | 检测到 | 检测到 | 通过 ✅ |
| BrowserScan | 检测到 | 部分通过 | 4/4 通过 ✅ |
| navigator.webdriver | true | false (JS 注入) | false (源码级) ✅ |
| TLS 指纹 | 不匹配 | 不匹配 | 与 Chrome 一致 ✅ |
💡 注:测试基于 Chromium 146,针对 30+ 主流检测网站验证。
快速开始
1. 安装
Python:
pip install cloakbrowser
# 可选:安装 GeoIP 支持
pip install cloakbrowser[geoip]
JavaScript (Playwright):
npm install cloakbrowser playwright-core
2. 使用示例
Python:
from cloakbrowser import launch
# 启动浏览器,开启拟人化行为和 GeoIP 匹配
browser = launch(humanize=True, geoip=True, proxy="socks5://user:pass@host:port")
page = browser.new_page()
page.goto("https://protected-site.com") # 不再被拦截
print(page.title())
browser.close()
JavaScript:
import { launch } from 'cloakbrowser';
const browser = await launch({ humanize: true });
const page = await browser.newPage();
await page.goto('https://protected-site.com');
await browser.close();
3. 迁移现有项目
只需替换导入语句,无需修改任何业务逻辑:
# 旧代码
# from playwright.sync_api import sync_playwright
# pw = sync_playwright().start()
# browser = pw.chromium.launch()
# 新代码
from cloakbrowser import launch
browser = launch()
附加功能:CloakBrowser Manager
对于需要多账号管理的用户,CloakBrowser 提供了免费的自托管配置文件管理器(替代 Multilogin/AdsPower):
docker run -p 8080:8080 -v cloakprofiles:/data cloakhq/cloakbrowser-manager
访问 http://localhost:8080,即可创建具有唯一指纹、代理和持久会话的浏览器配置文件,并通过 noVNC 进行可视化交互。
💡 适用场景
| 场景 | 痛点 | CloakBrowser 解决方案 |
|---|---|---|
| 数据采集/爬虫 | ❌ 频繁触发 CAPTCHA,IP 被封 | ✅ 源码级伪装 + 代理 GeoIP 匹配,稳定抓取 |
| 自动化测试 | ❌ 被识别为机器人,无法通过安全校验 | ✅ Humanize 行为模拟,reCAPTCHA v3 高分通过 |
| 多账号运营 | ❌ 指纹关联导致封号,商业软件昂贵 | ✅ 免费自托管 Manager,独立指纹会话管理 |
| AI Agent 浏览 | ❌ 浏览器环境不真实,任务中断 | ✅ 完美兼容 LangChain/Browser-use,提供真实环境 |
相关导航


Chromex

Duo Translator

prompt-master

Opera Air

OpenBridge

NeonLingo







