源码级定制
通过 Chromium 补丁在内核层提供浏览器环境配置。源码与构建流程开放,行为有据可查。
查看构建指南OPEN ENGINE. YOUR RULES.
开放的 Chromium 内核,熟悉的 Playwright API。从本地第一行脚本,到跨平台测试,让浏览器自动化更可控、更可复现。
pip install chromix playwrightnpm install @xiaoxiaofeihh/chromix playwright-coredocker run --rm ghcr.io/xiaozhou26/chromix:latest --version开源Python + Node.js六种平台构建
from chromix import launch
browser = launch()
try:
page = browser.new_page()
page.goto("https://example.com")
print(page.title())
finally:
browser.close()
Example Domain
01 / BUILT FOR CONTROL
看得见的实现,可配置的环境。
保留你熟悉的开发方式。
通过 Chromium 补丁在内核层提供浏览器环境配置。源码与构建流程开放,行为有据可查。
查看构建指南Python 与 Node.js SDK 返回 Playwright 浏览器对象,继续使用熟悉的页面操作、上下文管理与测试模式。
阅读 SDK 文档通过指纹种子与浏览器参数组织可复现实验。支持范围与平台边界明确记录,不把配置能力等同于检测结果。
查看配置参数原生 x64 / ARM64 构建
支持指定本地可执行文件
无需依赖托管服务
02 / FROM ZERO TO BROWSER
选择你的工具链,
从一段清晰的代码开始。
选择 Python 或 Node.js,安装对应的包与 Playwright 依赖。
首次启动按 SDK 配置的通道下载并缓存浏览器,不一定选择最新发布版本。
通过 Playwright API,在自有或获得授权的环境中开展测试与自动化。
pip install chromix playwrightfrom chromix import launch
browser = launch()
try:
page = browser.new_page()
page.goto("https://example.com")
print(page.title())
finally:
browser.close()
保存为 example.py,然后运行 python example.py。
npm install @xiaoxiaofeihh/chromix playwright-coreimport { launch } from '@xiaoxiaofeihh/chromix';
const browser = await launch();
try {
const page = await browser.newPage();
await page.goto('https://example.com');
console.log(await page.title());
} finally {
await browser.close();
}
保存为 example.mjs,然后运行 node example.mjs。
docker pull ghcr.io/xiaozhou26/chromix:latest
docker run --rm \
ghcr.io/xiaozhou26/chromix:latest --version
mkdir -p docker &&
curl -fsSL \
https://raw.githubusercontent.com/xiaozhou26/Chromix/main/docker/seccomp.json \
-o docker/seccomp.json &&
docker run --rm --init --shm-size=1g \
--cap-drop=ALL --security-opt=no-new-privileges \
--security-opt="seccomp=$PWD/docker/seccomp.json" \
ghcr.io/xiaozhou26/chromix:latest \
--headless --disable-gpu --dump-dom https://example.com
已发布的 latest 与 154.0.8037.97 标签为 amd64 和 arm64 均提供 154.0.8037.97,原有 154.0.8037.57 标签保留。
154.0.8037.97 已在 linux/amd64 与 linux/arm64 通过原生版本、DOM 和 sandbox smoke 测试,并验证多架构 manifest 与匿名拉取。
镜像提供浏览器 CLI,不预装 Python/Node SDK,也不是远程浏览器服务。无头运行需要宿主支持非特权用户命名空间;Ubuntu 24.04+ 可能还需要管理员审阅 AppArmor 策略。不要仅为启动浏览器而关闭沙箱或宿主安全策略。
设置 CLOAKBROWSER_BINARY_PATH 为可执行文件的绝对路径,即可跳过 SDK 下载。
03 / YOUR PLATFORM, COVERED
适用于本地开发与服务器工作流。
为两种桌面架构提供原生构建。
覆盖 Intel 与 Apple 芯片开发环境。
源码版本与发布标签分开管理。 当前源码:Linux / Windows 154.0.8037.97;macOS 152.0.7977.82。实际下载版本按上方各平台分别列出。下载时请选择匹配系统与架构的文件,并按照发布说明完成配置与校验。
04 / A CLOSER LOOK
一段主页操作演示:语言切换、SDK 选项卡、下载入口与常见问题。
录屏可能展示较早的界面;软件包状态与命令请以当前页面和发布文档为准。
Chromix 是开源的定制 Chromium 浏览器,提供 Python 与 Node.js SDK。它为获得授权的自动化、兼容性测试及研究提供可配置浏览器环境,不是托管浏览器服务。
可以。SDK 的 launch 函数返回 Playwright 浏览器对象,可继续使用熟悉的页面和上下文 API。具体参数兼容性与平台限制请查阅 SDK 文档,不应假设所有场景都能无修改替换。
不一定。已发布的 Python SDK 152.0.7977.82.post4 和 Node SDK 0.1.4 将 Windows、Linux 两种架构的 stable/latest 均映射到 v154.0.8037.97。macOS 保留 stable v151.0.7922.173 与 latest v152.0.7977.75。SDK 通道与 GitHub Latest 分开维护。需要使用指定本地版本时,将 CLOAKBROWSER_BINARY_PATH 设置为可执行文件的绝对路径,即可跳过下载。
源码版本描述各操作系统当前的构建输入,发布标签则标识一组已发布文件。当前 Linux 与 Windows 源码为 154.0.8037.97,macOS 为 152.0.7977.82。Windows x64 / ARM64 及 Linux x64 / ARM64 下载均使用 v154.0.8037.97,仅 macOS x64 / ARM64 继续使用 v154.0.8037.57,等待各自新版发布。Windows ARM64 的 .97 包复用通过原生重验的 216 补丁构建,不包含当前源码中的新 noise 改动。
原有 154.0.8037.57 标签仍提供双架构镜像。已发布的 ghcr.io/xiaozhou26/chromix:latest 与 154.0.8037.97 标签为 amd64 和 arm64 均提供 154.0.8037.97,原生运行测试与匿名拉取均已通过。版本检查可直接运行;无头浏览需要仓库提供的 seccomp 策略及宿主用户命名空间支持,AppArmor 要求请参阅 Docker 指南。
不保证。浏览器配置能力不等于匿名性、检测绕过或第三方服务的通过率。请仅在获得授权的范围内使用,遵守服务条款与适用法律,并在自己的环境中验证实际行为。
MAKE THE BROWSER YOURS.
阅读源码,运行实验,用你的方式创造。