做自动化爬虫的人都知道一个痛点:Playwright 和 Puppeteer 好用,但一碰到 Cloudflare Turnstile、FingerprintJS 这类反 bot 检测,就傻眼了。
市面上的解决方案大致分两类:一种是改配置(user-agent 伪装、注入 JS 隐藏 automation 标记),另一种是付费指纹浏览器(Multilogin、GoLogin、AdsPower)。前者效果越来越差,后者按月收费还不便宜。
CloakBrowser 选了第三条路。
不是补丁,是源码
CloakBrowser 不是一个 patched config,也不是 JS 注入。它是从 Chromium 的 C++ 源码层面改了 49 处指纹相关的代码——canvas、WebGL、audio、fonts、GPU、screen、WebRTC、network timing、automation signals、CDP input behavior,全部从底层处理。
反 bot 系统给它打的是正常浏览器的分数,因为它本质上就是一个正常的浏览器。
实际测试数据:30 个检测站全部通过,包括 Cloudflare Turnstile、FingerprintJS、BrowserScan。reCAPTCHA v3 评分 0.9——人类水平,服务端验证通过。
用法有多简单
如果你在用 Playwright,迁移只需要改三行:
# 之前
from playwright.sync_api import sync_playwright
pw = sync_playwright().start()
browser = pw.chromium.launch()
# 之后
from cloakbrowser import launch
browser = launch()
# 后面的代码完全不用改
Python 用 pip install cloakbrowser,JavaScript 用 npm install cloakbrowser。首次运行自动下载 ~200MB 的 stealth Chromium 二进制文件,零配置。
还支持 humanize=True 一个开关,自动模拟人类鼠标曲线、键盘时序和滚动模式。 behavioural detection(行为检测)也能过。
还有个 Browser Profile Manager
CloakBrowser 附带一个自托管的浏览器配置文件管理器,可以替代 Multilogin、GoLogin、AdsPower。创建带有独立指纹、代理和持久 session 的浏览器配置,通过 noVNC 在浏览器里直接交互。
docker run -p 8080:80 -v cloakprofiles:/data cloakhq/cloakbrowser-manager
打开 http://localhost:8080,创建配置,点击启动。MIT 协议,免费。
几个需要注意的点
CloakBrowser 的定位很明确:自动化场景下的反检测浏览器。但它不是银弹:
- 反 bot 检测系统在持续进化,今天能过的补丁明天可能失效。项目有自动更新机制(background update checks),但更新频率和覆盖率需要持续关注。
humanize=True模拟的是通用人类行为模式。如果你的目标站点对特定行业用户行为有精细化建模,这个模拟可能不够精准。- 172 个 commit、50 个 tag,对于一个做安全对抗的项目来说,维护深度还算可以,但团队规模不明,长期可持续性存疑。
谁该关注
如果你在做数据采集、自动化测试、或者需要大规模浏览器操作,CloakBrowser 是目前开源方案里完成度最高、迁移成本最低的选择。
但如果你在做的是合规敏感的事情——比如抓取受版权保护的内容、绕过明确的服务条款——请先搞清楚法律风险。工具是中性的,用途不是。
最新版本 v0.3.29,基于 Chromium 146.0.7680.177.4。新增原生 SOCKS5 代理支持、异步上下文启动、JS contextOptions 逃生通道。
主要来源: