🕶️ CloakBrowser:12.6k Stars 的隐身 Chromium,换三行代码绕过所有反爬检测 / CloakBrowser: 12.6k Stars Stealth Chromium — 3 Lines to Bypass Every Bot Detection
GitHub: CloakHQ/CloakBrowser | ⭐ 12,650 | 🛠 Python/TypeScript | MIT License
老实说,做 AI Agent 浏览器自动化的都知道那个痛——Playwright 一跑反爬就给你跳 CAPTCHA,reCAPTCHA v3 打 0.1 分,Cloudflare Turnstile 直接 block。以前的办法是套 playwright-stealth、undetected-chromedriver,但这些都是 JS 注入或改启动参数,Chrome 更新一次就废一次,反爬厂商还专门针对它们做检测。
CloakBrowser 的思路不一样——直接在 Chromium C++ 源码层打 49 个补丁,编译成自定义二进制。反爬系统看到的就是一个正常 Chrome 浏览器,因为它真的就是一个正常浏览器。reCAPTCHA v3 打 0.9 分(人类水平),Cloudflare Turnstile 自动过,30 多个检测站全部通过。
一、安装:两秒搞定
pip install cloakbrowser
或者 Node.js:
npm install cloakbrowser playwright-core
第一次运行自动下载隐身 Chromium 二进制(~200MB,缓存到本地)。
二、从 Playwright 迁移:改一行就行
- from playwright.sync_api import sync_playwright
- pw = sync_playwright().start()
- browser = pw.chromium.launch()
+ from cloakbrowser import launch
+ browser = launch()
page = browser.new_page()
page.goto("https://example.com") # 现在随便爬
browser.close()
三、核心用法
from cloakbrowser import launch
# 有代理 + 人类鼠标行为
browser = launch(
proxy="http://user:pass@proxy:8080",
humanize=True, # 贝塞尔曲线鼠标、逐字键盘、真实滚动
geoip=True, # 自动根据代理 IP 设置时区和语言
headless=False, # 有头模式,更真实
)
page = browser.new_page()
page.goto("https://bot.incolumitas.com") # 反爬地狱
page.fill("input[name='username']", "test") # 逐字输入,像真人
browser.close()
等效 Node.js:
import { launch } from 'cloakbrowser';
const browser = await launch({
proxy: 'http://user:pass@proxy:8080',
humanize: true,
});
const page = await browser.newPage();
await page.goto('https://example.com');
await browser.close();
四、持久化配置
登录态存到磁盘,下次启动自动恢复:
from cloakbrowser import launch_persistent_context
ctx = launch_persistent_context("./my-profile", headless=False)
page = ctx.new_page()
page.goto("https://protected-site.com")
# cookies、localStorage 自动保存
ctx.close()
# 下次启动
ctx = launch_persistent_context("./my-profile", headless=False)
page = ctx.new_page()
page.goto("https://protected-site.com") # 已经登录
ctx.close()
五、Docker 一行启动
docker run --rm cloakhq/cloakbrowser cloaktest
浏览器 Profile Manager(Multilogin 平替):
docker run -p 8080:8080 -v cloakprofiles:/data cloakhq/cloakbrowser-manager
打开 http://localhost:8080 创建指纹配置,一键启动。
六、踩坑记录
- humanize=True 很关键——默认模式虽然能过 CAPTCHA,但加了 humanize 之后连行为检测(鼠标轨迹、按键 timing)都能过
- 持久化配置的 storage quota 陷阱——默认设了 500MB 来过 FingerprintJS,但 BrowserScan 看到这个值会认为是隐身模式(-10 分)。如果目标站不用 FingerprintJS 但检查隐身模式,手动设大:
args=["--fingerprint-storage-quota=5000"] - Docker 里跑需要 headless,但隐身效果不打折扣
- 不解决 CAPTCHA 本身——它阻止 CAPTCHA 弹出来。如果已经弹出了验证码,你还是得手动解题或用第三方服务
总结
CloakBrowser 的核心逻辑很简单:与其在 JS 层跟反爬斗智斗勇,不如直接改 Chromium 源码让反爬压根不觉得你是自动化。49 个 C++ 补丁、Playwright 原生 API、一行迁移、免费开源。做 AI Agent 浏览器自动化的,值得一试。
标签:#CloakBrowser #StealthBrowser #BrowserAutomation #AI-Agent #WebScraping #Playwright