SuperAPI AI 工具集

invisible_playwright

invisible_playwright 是一个基于 Firefox 的反检测浏览器自动化库,旨在让 Playwright 脚本绕过反机器人检测和验证码。它使用在 C++ 源码层面修补的 Firefox,在引擎内部设置浏览器指纹(如 navigator、屏幕、GPU/WebGL、Canvas、字体、音频、WebRTC、时区、网络等),而非通过 JavaScript 注入,因此没有可被检测的覆盖痕迹。同时,驱动层对点击、悬停、拖拽等操作进行人性化处理,模拟真实鼠标路径和时序。该库兼容现有 Playwright 的同步和异步 API,无需修改代码即可切换,支持 Python 3.11+,可在 Windows x86_64 和 Linux x86_64/arm64 上运行。每个会话生成随机指纹,支持通过种子复现,并可固定特定指纹字段。支持 socks5、socks4、http、https 代理,DNS 默认通过代理路由,时区可跟随出口 IP。安装命令为 invisible-playwright,也可通过 python -m invisible_playwright 运行。项目采用 MIT 许可证,修补的 Firefox 二进制遵循 MPL-2.0。

访问官网

工具介绍

invisible_playwright 是一个开源的反检测浏览器自动化工具,基于 Playwright API 构建,但底层使用经过 C++ 源码级修补的 Firefox 浏览器,以规避反机器人系统的检测。其核心目标是让自动化脚本在访问网站时不被识别为机器人,从而减少验证码(如 reCAPTCHA、hCaptcha、Cloudflare Turnstile)的触发。

用途

该工具主要用于 Python 网页抓取和浏览器自动化场景,特别是那些需要绕过反机器人检测的任务。它适用于需要模拟真实用户行为、避免被网站封锁或要求验证码的自动化流程。

主要能力

  1. 反检测指纹:浏览器指纹在引擎内部设置,而非通过 JavaScript 注入。涵盖 navigator、屏幕、GPU/WebGL、Canvas、字体、音频、WebRTC、时区、网络等约 200 个字段。每个会话生成随机指纹,也可通过种子复现。
  2. 人性化操作:驱动层对点击、悬停、拖拽等操作模拟自然鼠标路径和人类时序,输入事件来自真实输入路径,确保 isTrusted 为 true。
  3. 兼容 Playwright API:支持同步和异步 API,无需修改现有代码即可切换。浏览器对象为标准的 playwright.sync_api.Browser 或 playwright.async_api.Browser。
  4. 代理支持:支持 socks5、socks4、http、https 代理,DNS 默认通过代理路由,避免本地泄漏。时区可跟随出口 IP 自动设置。
  5. 指纹固定:可通过种子固定特定指纹字段,如 GPU 等,其余字段仍由种子派生。
  6. 跨平台一致性:Canvas 和 WebGL 在不同操作系统上对同一种子保持一致。

使用方式

  • 安装:需要 Python 3.11 或更高版本。安装命令为 invisible-playwright(带连字符),也可使用 python -m invisible_playwright。
  • 切换:如果已有 Playwright 代码,只需两行更改即可切换到 invisible_playwright。
  • 配置:支持代理、时区设置,可通过种子复现运行,也可固定特定指纹字段。
  • 命令行:提供 CLI 工具。
  • 集成:可作为 MCP 服务器使用(通过 uvx aihawk),也可与 AIHawk 界面配合,需要 OpenRouter 密钥。

适用场景

  • 网页抓取:需要绕过反机器人检测的数据采集任务。
  • 自动化测试:需要模拟真实用户行为的测试场景。
  • AI 代理:作为 AI 代理的浏览器自动化引擎。
  • 隐私保护:需要隐藏真实浏览器指纹的自动化操作。

限制

  • 部分 Playwright 功能不在支持范围内,如 tracing、HAR、CDP、API 请求上下文等,这些功能会明确拒绝并说明原因。
  • 仅支持 Windows x86_64 和 Linux x86_64/arm64 平台。
  • 需要 Python 3.11 或更高版本。
  • 项目声明仅供教育目的,按原样提供,不提供任何保证,使用者需自行承担风险并遵守当地法律。
  • 修补的 Firefox 二进制遵循 MPL-2.0 许可证,C++ 补丁位于 feder-cr/firefox_antidetect_patch。

相关项目

  • invisible_core:负责种子到指纹、偏好设置、代理和地理定位。
  • AIHawk:将引擎作为 MCP 服务器,并提供包含模型的界面。
  • 其他类似项目:Camoufox、Patchright、nodriver、playwright-stealth 等,各有不同侧重点。