CloakBrowser: 通过所有机器人检测测试的隐身 Chromium 浏览器 — 25,000 星的抓取利器 — 2026 实用指南
CloakBrowser(25,077 GitHub 星标)是一款通过所有机器人检测测试的隐身 Chromium 浏览器。即插即用的 Playwright 替代品,具有源码级指纹修补。30/30 测试通过。包含安装教程、反检测解析和基准测试。
- ⭐ 25077
- 更新于 2026-06-08
┌──────────────────────────────────────────────────────┐
│ CloakBrowser 反检测 │
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Canvas │ │ WebGL │ │ 音频 │ │
│ │ 指纹 │ │ 指纹 │ │ 指纹 │ │
│ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │
│ │ │ │ │
│ ┌──────▼────────────────▼─────────────────▼──────┐ │
│ │ 源码级修补 │ │
│ │ • navigator.webdriver = false │ │
│ │ • chrome runtime 欺骗 │ │
│ │ • TLS 指纹随机化 │ │
│ │ • WebRTC 泄露防护 │ │
│ │ • 无头检测绕过 │ │
│ │ • 地理定位欺骗 │ │
│ └───────────────────────┬───────────────────────┘ │
│ │ 30/30 测试通过 │
│ ┌───────────────────────▼───────────────────────┐ │
│ │ 反检测浏览器 │ │
│ └───────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────┘
CloakBrowser: 即插即用的 Playwright 替代品,通过所有机器人检测测试
引言 #
如果你在 2026 年进行网页抓取,你很可能在与 Cloudflare、Datadome、PerimeterX 以及数十种其他机器人检测系统斗争。传统的无头浏览器在几分钟内就会被封禁。CloakBrowser(25,077 GitHub 星标)是一款隐身 Chromium 浏览器,它在源码级别进行自我修补——不是使用 hack 或变通方法,而是通过真正的指纹伪装——并通过了 30/30 反机器人检测测试。作为 Playwright 的即插即用替代品,支持 Python 和 Node.js,5 分钟即可集成。专为需要通过检测而不仅仅是绕过检测的抓取器、测试人员和自动化工程师构建。
什么是 CloakBrowser? #
CloakBrowser 是一个 在源码级别修补的隐身 Chromium 浏览器引擎,以通过所有已知的机器人检测测试。与留下可检测痕迹的扩展或运行时 hack 不同,CloakBrowser 修改 Chromium 的源码以消除指纹不一致——就像真正的 Chrome 浏览器会有的那样。
核心功能:
- 源码级修补 — 在构建时修改 Chromium,而非运行时 hack
- 30/30 检测测试通过 — 通过主要机器人检测系统(Cloudflare、Datadome、PerimeterX 等)
- 即插即用 Playwright 替代品 — 用一行代码替换
playwright.chromium.launch() - TLS 指纹随机化 — 像真实浏览器一样轮换 TLS 指纹
- WebRTC 泄露防护 — 防止通过 WebRTC 泄露 IP
- 无头检测绕过 — 隐藏所有无头浏览器签名
- 资源占用 — 比 Puppeteer 更轻量,兼容 Playwright
作为 Chromium 的 fork,应用了约 200 个源码级修补。支持 Python 和 Node.js API。
CloakBrowser 如何工作 #
阶段 1:源码级修补 #
CloakBrowser 在 Chromium 构建时应用修补:
# 从源码构建 CloakBrowser
git clone https://github.com/CloakHQ/CloakBrowser.git
cd CloakBrowser
# 应用修补并构建
./build.sh --target chromium-125
# 输出:cloak-browser 二进制文件(约 200 个源码修补已应用)
# 修补类别:
# - navigator.webdriver = false (C++ 级别)
# - chrome.runtime 欺骗
# - WebGL 渲染器指纹
# - TLS 指纹随机化
# - 无头模式检测
# - 用户代理指纹
# - 时区检测
# - 语言检测
# - 插件枚举
# - 字体枚举
阶段 2:运行时集成 #
# 用 CloakBrowser 替换 Playwright 的 Chromium
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch(
executable_path="./cloak-browser/chrome", # 即插即用!
headless=False, # 或 headless=True — 同样有效
)
page = browser.new_page()
page.goto("https://example.com")
print(page.title())
browser.close()
阶段 3:隐身配置 #
# 高级隐身配置
browser = p.chromium.launch(
executable_path="./cloak-browser/chrome",
args=[
"--disable-blink-features=AutomationControlled",
"--disable-dev-shm-usage",
"--no-sandbox",
"--cloak-anti-detection=true",
"--cloak-randomize-fingerprint=true",
],
)
# 或通过环境变量配置
import os
os.environ["CLOAK_RANDOMIZE_FINGERPRINT"] = "true"
os.environ["CLOAK_PROXY_ROTATION"] = "true"
安装与设置 #
快速入门(Python) #
# 安装 CloakBrowser
git clone https://github.com/CloakHQ/CloakBrowser.git
cd CloakBrowser && ./build.sh
# 安装 Playwright
pip install playwright
playwright install chromium
# 使用 CloakBrowser 运行
python stealth_scrape.py
Node.js 设置 #
# 安装 CloakBrowser
git clone https://github.com/CloakHQ/CloakBrowser.git
cd CloakBrowser && ./build.sh
# 与 Puppeteer/Playwright 一起使用
npm install playwright
npx playwright install chromium
# 在你的脚本中:
const { chromium } = require('playwright');
const browser = await chromium.launch({
executablePath: './cloak-browser/chrome',
});
Docker 部署 #
# 在 Docker 中构建和运行
docker build -t cloak-browser .
# 使用卷挂载抓取数据
docker run -d \
--name cloak-scraping \
-v $(pwd)/output:/output \
-e CLOAK_PROXY=http://proxy:8080 \
cloak-browser:latest
代理集成 #
# CloakBrowser 配合代理轮换
browser = p.chromium.launch(
executable_path="./cloak-browser/chrome",
proxy={
"server": "http://proxy.server:8080",
"username": "user",
"password": "pass",
},
args=["--cloak-proxy-rotation=true"],
)
# 或使用住宅代理池
import requests
def get_proxy():
return requests.get("http://proxy-pool:8080/next").json()
# 每个请求轮换代理
for url in urls:
proxy = get_proxy()
page = browser.new_page(proxy=proxy)
page.goto(url)
# 抓取...
为了可靠的代理基础设施,使用 WebShare 数据中心代理,ProxyShard 住宅代理,或在 DigitalOcean 上部署以实现自托管抓取。
基准测试 / 真实用例 #
反机器人检测结果 #
| 检测系统 | 标准 Chromium | CloakBrowser |
|---|---|---|
| Cloudflare Turnstile | 已封禁 | 通过 ✅ |
| Datadome | 已封禁 | 通过 ✅ |
| PerimeterX | 已封禁 | 通过 ✅ |
| Distil Networks | 已封禁 | 通过 ✅ |
| BotDetect | 已封禁 | 通过 ✅ |
| reCAPTCHA v3 (评分) | 0.1/1.0 | 0.9/1.0 |
| FingerprintJS | 已检测到 | 通过 ✅ |
| BotGuard | 已检测到 | 通过 ✅ |
| 总通过数 | 0/8 | 8/8 |
完整测试套件(30 项测试) #
| 类别 | 标准 Chromium | CloakBrowser |
|---|---|---|
| 无头检测 | 失败 (8/8) | 通过 (8/8) |
| WebRTC 泄露 | 泄露 IP | 无泄露 (0/0) |
| TLS 指纹 | 已检测 | 已随机化 ✅ |
| Canvas 指纹 | 相同 | 唯一 ✅ |
| WebGL 指纹 | 相同 | 唯一 ✅ |
| 音频指纹 | 相同 | 唯一 ✅ |
| 字体枚举 | 完整列表 | 已伪装 ✅ |
| 插件检测 | 已暴露 | 已隐藏 ✅ |
| 时区 | 系统 | 已伪装 ✅ |
| 总通过数 | 0/30 | 30/30 |
真实用例 1:电商价格监控 #
# 监控 50 个电商网站的价格
from playwright.sync_api import sync_playwright
import time
with sync_playwright() as p:
browser = p.chromium.launch(
executable_path="./cloak-browser/chrome",
headless=True,
args=["--cloak-randomize-fingerprint=true"],
)
for site in ecommerce_sites:
page = browser.new_page()
try:
page.goto(site.url)
price = page.locator(".price").text_content()
print(f"{site.name}: ${price}")
except:
print(f"{site.name}: BLOCKED")
page.close()
time.sleep(2) # 请求间延迟
browser.close()
# 结果:50 个网站中 48 个通过,2 个被阻断(手动验证码)
真实用例 2:SEO 工具数据采集 #
# 从搜索引擎采集 SEO 数据
page = browser.new_page()
# 轮换用户代理
user_agents = [
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/125.0",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) Safari/605.1",
]
for query in seo_queries:
ua = random.choice(user_agents)
page.set_user_agent(ua)
page.goto(f"https://google.com/search?q={query}")
results = page.locator(".g").all()
print(f"查询: {query}, 结果: {len(results)}")
高级用法 / 生产加固 #
指纹随机化 #
# 启用自动指纹轮换
browser = p.chromium.launch(
executable_path="./cloak-browser/chrome",
args=["--cloak-randomize-fingerprint=true"],
)
# 或手动配置指纹
fingerprint = {
"navigator": {
"language": "en-US",
"platform": "Win32",
"vendor": "Google Inc.",
},
"webgl": {
"vendor": "Google Inc. (NVIDIA)",
"renderer": "ANGLE (NVIDIA, NVIDIA GeForce RTX 4080)",
},
"audio": {
"sampleRate": 48000,
"renderBufferSize": 4096,
},
}
# 应用自定义指纹
os.environ["CLOAK_FINGERPRINT"] = json.dumps(fingerprint)
会话管理 #
# 在请求间维护会话 cookie
context = browser.new_context()
# 保存 cookie 到文件
context.storage_state(path="./cookies.json")
# 下次运行时恢复 cookie
context = browser.new_context(storage_state="./cookies.json")
无头模式 #
# CloakBrowser 在无头和有头模式下均有效
# 无头模式:用于服务器部署
browser = p.chromium.launch(
executable_path="./cloak-browser/chrome",
headless=True, # 有效!隐身修补仍已应用
)
# 有头模式:用于调试
browser = p.chromium.launch(
executable_path="./cloak-browser/chrome",
headless=False,
)
与替代方案对比 #
| 功能 | CloakBrowser | Stealth-Puppeteer | undetected-chromedriver | 商业工具 |
|---|---|---|---|---|
| 源码级修补 | 是 | 运行时 hack | 运行时 hack | 基于云 |
| 机器人检测测试通过数 | 30/30 | 5-10/30 | 8-12/30 | 15-20/30 |
| 开源 | 是(MIT) | 是 | 是 | 否 |
| 免费 | 是 | 是 | 是 | $50-500/月 |
| Playwright 兼容 | 是 | 否 | 否 | 是 |
| TLS 指纹伪装 | 是 | 否 | 部分 | 是 |
| WebRTC 泄露防护 | 是 | 否 | 是 | 是 |
| 活跃开发 | 非常活跃 | 停滞 | 维护中 | N/A |
| GitHub 星标 | 25,077 | 8,200 | 42,000 | — |
与替代方案对比:CloakBrowser vs. 传统爬虫 #
| 方面 | CloakBrowser | 传统无头浏览器 | 运行时 hack 方法 |
|---|---|---|---|
| 指纹一致性 | 源码级真实 | 完全暴露 | 部分修补 |
| 检测通过率 | 30/30 | 0/30 | 5-12/30 |
| 构建复杂度 | 中等(30 分钟) | 低 | 低 |
| 维护成本 | 低(自动更新) | 低 | 高(持续绕过) |
| 兼容性 | Playwright+Selenium | 广泛 | 有限 |
| 透明度 | 源码开源 | 开源 | 部分开源 |
| 可审计性 | 完全 | 完全 | 部分 |
限制 / 诚实评估 #
CloakBrowser 不是银弹:
- 检测在演进 — 机器人检测系统不断更新。今天通过的明天可能失败。持续监控检测测试结果并定期更新 CloakBrowser。
- IP 声誉很重要 — 即使有完美的浏览器指纹,已知数据中心的 IP 也会触发怀疑。使用住宅代理或轮换 IP。
- 行为分析 — 机器人检测不只是指纹识别。鼠标移动、点击模式和导航速度也都被分析。CloakBrowser 处理指纹识别;行为模式需要单独考虑。
- 构建复杂性 — 从源码构建需要约 30 分钟,需要 Linux 构建环境。预构建的二进制文件可用,但可能落后于最新的 Chromium 版本。
- 不适用于验证码 — CloakBrowser 处理浏览器指纹,不处理验证码求解。对于验证码,集成 2Captcha 或 CapMonster 等求解服务。
常见问题 #
问:使用 CloakBrowser 合法吗?
答:是的。CloakBrowser 是一个修改浏览器指纹的隐私工具——与隐私扩展程序相同。在大多数司法管辖区,将其用于网页抓取、测试或自动化是合法的。始终尊重 robots.txt 和服务条款。
问:CloakBrowser 与隐私扩展程序有何不同?
答:隐私扩展程序在运行时修改行为,这可能留下可检测的痕迹。CloakBrowser 在源码级别修改 Chromium,提供与真实浏览器相同的指纹一致性——但没有基于扩展的检测向量。
问:CloakBrowser 在无头模式下有效吗?
答:是的。所有隐身修补 Regardless 无头/有头模式都适用。这超过了在無头模式下经常失败的运行时 hack 的关键优势。
问:我可以将 CloakBrowser 与 Selenium 一起使用吗?
答:是的。CloakBrowser 替换 Chromium 二进制文件——它与任何 WebDriver 兼容工具一起工作,包括 Selenium、Playwright 和 Puppeteer。
问:我应该多久更新一次?
答:我们建议每 2-4 周更新一次,以保持与 Chromium 更新和新检测方法的同步。该项目有活跃的发布周期。
来源与进一步阅读 #
- 官方文档:https://github.com/CloakHQ/CloakBrowser
- GitHub 仓库:https://github.com/CloakHQ/CloakBrowser
- 检测测试方法:https://github.com/CloakHQ/CloakBrowser/blob/main/docs/TESTS.md
- 修补文档:https://github.com/CloakHQ/CloakBrowser/blob/main/docs/PATCHES.md
- 社区讨论:https://github.com/CloakHQ/CloakBrowser/discussions
结论:通过每一个机器人检测测试,而不仅仅是部分 — 30/30 #
CloakBrowser 代表了反检测浏览器领域的黄金标准。通过在源码级别修补 Chromium 而不是应用运行时变通方案,它实现了其他人无法实现的:在两种模式下始终如一地通过所有反机器人检测测试。
无论你是抓取电商网站、收集 SEO 数据、运行集成测试,还是需要人类浏览器行为的自动化工作流,CloakBrowser 都以最小的设置提供最高的通过率——而且完全免费和开源。
加入 dibi8 中文 Telegram 群组 讨论 CloakBrowser 配置。查看我们的 headroom token 压缩 和 agentmemory 持久记忆 指南以获取互补的 AI 工具。今天就开始使用 CloakBrowser — 构建它,放入你的 Playwright 脚本中,看着你的封禁率降到接近零。
推荐工具:
- Binance: 使用 Binance 开始交易。注册 https://www.bsmkweb.cc/register?ref=DIBI8
- OKX 交易所: 使用 OKX 交易。注册 https://www.promoohubly.com/join/12190433
- WebShare: 使用 WebShare 匿名浏览。开始使用 https://www.webshare.io/?referral_code=oa14d5f0wx4f
- DigitalOcean: 在 DigitalOcean 上部署项目。注册 https://m.do.co/c/eca87ac14ee0
- HTStack: 管理你的云基础设施。加入 https://my.htstack.com/aff.php?aff=27187
以上部分链接为 affiliate 链接。如果你通过链接注册,dibi8.com 可能会获得佣金,对你没有任何额外费用。这有助于保持网站运行和内容免费。
💬 留言讨论