AutomatiQ 实战:让 AI 看你浏览一次,自动生成网页自动化脚本
场景
你有一个每周都要做的任务:登录后台管理系统,导出上个月的销售报表,整理成特定的 Excel 格式,然后发给财务团队。这个流程其实很简单——点几个下拉菜单、填两个日期、点导出按钮——但你一直没时间写自动化脚本,因为目标页面是 React 单页应用,DOM 结构频繁变动,传统选择器方案总是过几个月就得重写。
如果用 AI 来做呢?不是让它替你写 Playwright 脚本——而是让它看着你怎么操作,然后自动生成一份完整的自动化脚本。这就是 AutomatiQ 在做的事。
AutomatiQ 是什么
AutomatiQ 是一个开源的 Python 工具(MIT 许可证,GitHub 106⭐),它通过观察你的浏览器操作,自动逆向工程出可复用的 HTTP 自动化脚本。你不需要手动分析网络请求、不需要写 XPath 选择器、不需要理解目标页面的 DOM 结构——你只需要像平时一样使用浏览器完成操作,AutomatiQ 的 AI Agent 会帮你把整个流程转化为可独立运行的 Python 脚本。
与传统的 Playwright/Puppeteer 自动化方案相比,AutomatiQ 的核心差异在于:传统方案要求你手动编写脚本逻辑(”点击按钮 A → 等待响应 → 提取数据 B”),而 AutomatiQ 只需要你操作一遍,然后交由 AI 逆向工程出完整逻辑。
三步管道工作原理
AutomatiQ 的内部流程分为三个阶段:
1. 录制阶段 — CDP 浏览器捕获
AutomatiQ 使用 Chrome DevTools Protocol(CDP)启动一个被检测的 Chrome 实例。在录制过程中,它会捕获:
- 网络请求与响应体:每个 HTTP 请求的 URL、方法、参数、响应内容
- 用户交互事件:点击坐标、输入内容、页面导航
- Cookie 与存储状态:会话信息、localStorage
- 屏幕帧:按帧记录屏幕变化(配合视觉分析)
完成操作后按 Ctrl+C 结束录制,所有数据被打包为一个 session 文件夹。
2. 编译阶段 — 视觉 AI 分析
录制文件被分割为每个操作对应的视频片段。一个视觉大模型(默认 Gemini 3 Flash)逐个观看每个片段并生成结构化标注:
- 用户点击了什么元素
- 页面发生了什么变化
- 操作是否成功
- 对应的网络请求是什么
与此同时,所有网络请求数据被去重、解码并整理为 workspace dump。
3. Agent 阶段 — 沙箱编写脚本
一个 LLM Agent 读取 workspace dump 后,在隔离的 Python/IPython 沙箱环境中迭代式地编写和验证自动化脚本。它可以实时测试假设(”这个 API 返回的数据结构是什么”),有护栏机制防止无限循环,最终产出一个完整的可复用 Python 脚本。
快速上手
安装和运行只需要三行命令:
pip install automatiq export GEMINI_API_KEY=你的密钥 automatiq run https://example.com
浏览器自动打开后,你正常完成操作,按 Ctrl+C 结束录制,AutomatiQ 的 Agent 就开始工作了。
两种使用模式
模式一:All-in-one 一键执行
automatiq run https://example.com
录制完成后立即启动 Agent,适合一次性的自动化任务。
模式二:分步执行
automatiq record https://example.com # 先录制 automatiq agent # 稍后生成脚本 automatiq agent --target path/to/sess # 指定特定录制文件
适合需要多次录制同一站点不同流程的场景,或者想先录制一批 session 再集中处理。
模型定制与本地部署
AutomatiQ 底层使用 LiteLLM,这意味着你可以轻松切换模型提供商:
automatiq run https://example.com --model openai/gpt-4o automatiq run https://example.com \ --model openai/llama3.3 \ --recorder-model openai/llava \ --base-url http://localhost:11434/v1
Agent 模型和视觉识别模型可以分别设置,视觉任务使用轻量模型(如 Gemini 3.1 Flash Lite)即可获得不错的效果。
配置文件
首次运行后,AutomatiQ 会在 ~/.automatiq/config.toml 创建配置文件:
[models] agent = "gemini/gemini-3-flash-preview" recorder = "gemini/gemini-3.1-flash-lite-preview" [agent] max_steps = 60 sandbox_timeout = 60 [recording] fps = 3 segment_pad = 2 merge_gap_threshold = 1.5 max_frames_per_prompt = 8
CLI 选项优先级:CLI 参数 > 配置文件 > 默认值。
核心 CLI 选项速查
| 选项 | 功能说明 | 默认值 |
|---|---|---|
--target PATH | 指定 session 文件夹路径 | 最近一次录制 |
--model MODEL | Agent 用模型 | gemini/gemini-3-flash-preview |
--recorder-model MODEL | 视觉分析模型 | gemini/3.1-flash-lite-preview |
--base-url URL | 自定义 API 端点 | — |
--max-steps N | Agent 最大迭代次数 | 60 |
--sandbox-timeout SEC | IPython 单元超时 | 60 |
--output-dir PATH | 输出目录 | ./output |
适用场景
- 数据爬取与定时报表:需要定期从某网站提取结构化数据,但网站频繁改版
- 内部系统自动化:对接没有开放 API 的遗留系统
- 重复性表单填写:需要定期提交相同格式的数据
- 竞品监控:定期检查竞争对手页面的内容变化
- SaaS 数据迁移:从一个平台向另一个平台批量迁移数据
与传统方案对比
| 能力 | AutomatiQ | Playwright/Puppeteer | 手动 curl |
|---|---|---|---|
| 学习成本 | 看你操作一遍即可 | 需了解选择器和浏览器 API | 需分析抓包 |
| 抗页面变更 | 自动适配(视觉+请求) | 选择器易失效 | URL/参数变化时需更新 |
| 自动化程度 | AI 自动生成脚本 | 手动编写 | 手动编写 |
| 离线运行 | Agent 阶段需 API | 完全离线 | 完全离线 |
| 跨浏览器 | Chrome 专用 | 多浏览器 | 不限 |
注意事项
- AutomatiQ 当前处于 Alpha 阶段,核心管道稳定但不排除边界情况
- 默认使用 Gemini 3 Flash,需要 Google AI API 密钥(有免费额度)
- 视觉分析阶段可能会消耗一定量的 Token,建议处理简单流程时使用 Flash Lite 模型
- Agent 生成的脚本建议人工审查后再投入生产使用
- 沙箱执行默认超时 60 秒,复杂流程可能需要调大
--sandbox-timeout
总结
AutomatiQ 填补了一个有趣的内容空白:不是「让 AI 帮我写代码」,而是「让 AI 看着我怎么操作,然后自动生成可复用的代码」。对于需要定期执行但缺乏 API 支持的网页操作场景,这种工作流能极大地降低自动化门槛。它的 CDP 录制 + 视觉分析 + Agent 沙箱三段式架构,让「演示一次 → 获得自动化脚本」这件事在技术上变得可行。
如果你有一个拖了几个月没写的网页自动化脚本,不妨试试看让 AutomatiQ 看着你操作一遍。