什么是Agent Browser
Agent Browser 是一个面向命令行的浏览器自动化工具,核心思路不是直接靠坐标点操作页面,而是先打开网页、抓取页面快照,再根据快照里返回的元素引用或语义定位结果去执行点击、输入、选择、滚动等动作。证据包里给出的标准流程很清楚:先用 open 进入页面,再用 snapshot 分析当前页面结构,拿到像 @e1、@e2 这样的元素引用后继续交互;当页面跳转或 DOM 变化明显时,再重新抓一次快照。这种工作方式更接近“先理解页面,再做操作”,比单纯脚本化点击更适合复杂网页流程。
从能力范围看,它覆盖了常见网页自动化的大部分基础环节。页面导航方面支持打开 URL、前进后退、刷新、关闭,也可以通过 CDP 连接已有浏览器;交互方面支持 click、dblclick、fill、type、press、hover、check、select、drag、upload 等命令,还能切换标签页、窗口、iframe,并处理弹窗。获取信息时,可以提取文本、HTML、输入框值、属性、标题、URL、元素数量、样式和位置盒模型,同时支持截图、整页截图、导出 PDF,以及把操作过程录成视频。对需要等待页面状态稳定的任务,它也给出了 wait 机制,可等待元素出现、文本出现、URL 匹配、网络空闲或某个 JavaScript 条件满足。
它的另一个特点,是兼顾“脚本自动化”和“可观测调试”。一方面,snapshot -i 只返回可交互元素,适合把页面抽象成更易处理的操作对象;另一方面,也保留了 console、errors、highlight、trace、record 等调试手段,便于定位页面报错、确认元素是否命中、回放执行过程。证据包还显示它支持 JSON 输出,说明它不仅能被人直接在终端里使用,也适合被其他程序调用后继续解析结果。
核心功能特点
- 以“打开页面—抓取快照—按元素引用交互”为核心流程,适合处理动态页面和多步操作
- 支持点击、输入、键盘、悬停、勾选、下拉选择、拖拽、上传等常见网页交互命令
- 可提取文本、HTML、属性、样式、页面标题与 URL,并支持计数、状态检查和元素可见性判断
- 内置截图、整页截图、PDF 导出和 WebM 录屏能力,方便留档、验收与问题复现
- 支持等待条件、标签页与 iframe 切换、网络拦截、会话隔离、Cookie 与本地存储操作,便于测试和数据采集
适用场景
如果把 Agent Browser 放到实际开发和运营流程里,最直接的应用场景就是网页测试与回归验证。比如一个表单提交流程,工具可以先抓取可交互元素,再按引用填写邮箱和密码、点击提交、等待网络空闲,最后重新抓取页面状态确认结果。对单页应用或依赖异步加载的后台系统,这种“操作后等待,再重新识别页面”的模式尤其有用。再加上它支持可见性、可用性、勾选状态检查,以及控制视口、设备模拟、离线模式、额外请求头和基础认证,适合验证不同环境下的页面表现。
第二类场景是需要半结构化或结构化采集网页信息的任务。它不仅能抓取元素文本,还能读取属性、HTML、样式和数量,并能把结果以 JSON 形式输出,这让它适合做页面内容提取、列表项统计、状态读取、截图留证等工作。对于需要批量访问不同站点或地区页面的任务,代理支持、网络请求查看与过滤、请求拦截和模拟响应也提供了更灵活的控制手段。若采集流程涉及登录,证据包里还给出了保存和加载状态的方式,便于先完成一次认证,后续复用会话继续访问受保护页面。
第三类场景偏向演示、排障和自动化运维辅助。Agent Browser 可以录制视频、保存追踪文件、查看控制台消息和页面错误,还能高亮元素,这些能力对于复现线上问题、制作操作演示、核对自动化脚本命中目标都很实用。它还支持并行会话、标签页和窗口管理,说明同一台机器上可以分开执行多个浏览器任务。总体看,这个工具更适合那些希望用统一命令接口完成网页导航、页面交互、信息获取和调试留档的开发者、测试人员以及需要做流程自动化的技术团队。
