核心用法
stealthy-auto-browse是一款专为对抗高级bot检测设计的浏览器自动化工具,采用Camoufox(定制Firefox内核)彻底消除Chrome DevTools Protocol信号,配合PyAutoGUI实现的OS级鼠标键盘输入,使网站无法通过JavaScript检测自动化痕迹。
架构特点:容器化部署(Docker),内置Xvfb虚拟显示(1920×1080),HTTP API操控,支持noVNC实时观测。提供双模式输入系统:
- System Input(
system_click/system_type等):OS级输入,带有人类化轨迹抖动和随机延迟,完全不可检测 - Playwright Input(
click/fill等):DOM级操作,速度快但存在被行为分析识别的风险
核心工作流程:goto导航 → get_text/get_html读取 → get_interactive_elements获取坐标 → system_click/system_type交互 → wait_for_*条件等待。配套完整的会话管理(cookies/storage)、网络日志、文件上传下载、多标签页、对话框处理等功能。
高级特性:Page Loaders机制支持YAML配置自动执行站点定制脚本(如自动关闭cookie弹窗);预装uBlock Origin/LocalCDN等隐私扩展;支持时区匹配、代理路由、持久化profile等反检测配置。
显著优点
- 检测绕过能力行业顶尖:零CDP暴露+OS级输入双重保障,通过CreepJS/BrowserScan/Pixelscan/Cloudflare检测
- 人类行为模拟精细:鼠标移动带贝塞尔曲线缓动和随机抖动,打字间隔±30ms抖动,滚动支持随机幅度人形化模式
- 长期会话稳定性:持久化指纹和cookie存储,避免频繁登录触发风控
- 操作可观测性强:noVNC实时画面+截图API,调试友好
- 部署门槛低:单Docker容器,HTTP API无SDK依赖
- 扩展机制灵活:Page Loaders实现站点级自动化脚本复用
潜在局限
- 性能开销显著:对比原生curl或简单Playwright,启动容器+虚拟显示+人形化延迟导致单次请求耗时数秒至数十秒
- 资源占用高:完整浏览器+图形环境,内存占用数百MB起步
- 坐标依赖脆弱性:system模式依赖
get_interactive_elements返回的绝对坐标,页面动态布局变化或响应式设计可能导致点击偏差 - 单实例瓶颈:HTTP API为单浏览器实例,高并发需多容器部署,状态隔离需自行管理
- Firefox生态限制:部分站点对Firefox兼容不佳或针对性风控,且缺乏Chrome独有的部分功能
- 维护风险:Camoufork为社区fork,更新节奏滞后于官方Firefox
适合人群
- 需要绕过Cloudflare/DataDome/PerimeterX/Akamai的企业级爬虫开发者
- 需要维持长期登录会话的账号自动化场景(如社交媒体管理、电商平台运营)
- 对检测规避优先级远高于执行速度的合规数据采集项目
- 具备Docker运维能力、能接受秒级延迟的技术团队
常规风险
- 法律合规风险:明确设计用于规避反爬机制,使用于受保护站点可能违反服务条款或当地法律(如CFAA)
- 误操作风险:OS级输入不可撤销,若坐标计算错误可能点击到意外区域(如外部广告、危险按钮)
- 会话泄露风险:持久化profile若未妥善隔离,多租户场景可能交叉污染cookies/指纹
- 依赖可用性风险:第三方镜像仓库和社区fork的可持续性存在不确定性
- 检测军备竞赛风险:反检测技术持续演进,当前有效不代表长期免疫,需持续跟进维护