SuperAPI AI 工具集

browser-tools

测试与质量

查看项目

更新于 10-15 18:31

技能介绍

Browser Tools 是一套基于 Chrome DevTools Protocol 的浏览器自动化工具,面向智能体辅助的网页自动化场景。这些工具通过远程调试端口 :9222 连接 Chrome 浏览器。

用途

该工具集用于在真实浏览器中与网页交互,适合以下场景:在真实浏览器中测试前端代码;与需要 JavaScript 才能正常工作的页面交互;用户需要直观查看或操作页面;调试认证或会话问题;抓取需要 JS 执行的动态内容。

主要能力

工具以命令行脚本形式提供,覆盖以下功能:

  • 启动 Chrome:browser-start.js 启动带远程调试(:9222)的 Chrome,使用 --profile 参数可复制用户配置文件(包含 Cookie、登录状态),以保留用户的认证状态。
  • 导航:browser-nav.js 用于跳转到指定 URL,使用 --new 参数可在新标签页中打开,而非复用当前标签页。
  • 执行 JavaScript:browser-eval.js 在当前活动标签页中执行 JavaScript,代码运行于异步上下文,可用于提取数据、检查页面状态或以编程方式操作 DOM。
  • 截图:browser-screenshot.js 捕获当前视口并返回临时文件路径,用于直观检查页面状态或验证 UI 变更。
  • 选取元素:browser-pick.js 启动交互式选择器,让用户点击页面元素进行选择,支持多选(Cmd/Ctrl+Click),按 Enter 完成后返回所选元素的 CSS 选择器。适用于用户想选择特定 DOM 元素、提取特定条目数据,或页面结构复杂难以确定选择器的场景。
  • 查看 Cookie:browser-cookies.js 显示当前标签页的所有 Cookie,包括 domain、path、httpOnly 和 secure 标志,用于调试认证问题或检查会话状态。
  • 提取页面内容:browser-content.js 导航到指定 URL 并以 markdown 形式提取可读内容,使用 Mozilla Readability 进行文章提取、Turndown 进行 HTML 到 markdown 的转换,可处理含 JavaScript 内容的页面(会等待页面加载)。

使用方式

首次使用前需运行一次安装:

cd {baseDir}/browser-tools npm install

启动 Chrome:

{baseDir}/browser-start.js # 全新配置文件 {baseDir}/browser-start.js --profile # 复制用户配置文件(Cookie、登录状态)

导航:

{baseDir}/browser-nav.js https://example.com {baseDir}/browser-nav.js https://example.com --new

执行 JavaScript:

{baseDir}/browser-eval.js 'document.title' {baseDir}/browser-eval.js 'document.querySelectorAll("a").length'

截图:

{baseDir}/browser-screenshot.js

选取元素:

{baseDir}/browser-pick.js "Click the submit button"

查看 Cookie:

{baseDir}/browser-cookies.js

提取页面内容:

{baseDir}/browser-content.js https://example.com

效率建议

资料中给出了一些使用建议:优先解析 DOM 而非截图来查看页面状态;将复杂脚本合并到单次调用中,用 IIFE 包裹多语句代码;批量执行交互而非逐次点击;对输入序列进行批处理;一次性读取应用或游戏状态;若操作后 DOM 有更新,可用 bash 加小延迟(如 sleep 0.5)再执行;交互前先调查页面结构,再针对具体元素操作。

限制

资料未提供关于收费、价格、平台兼容性、性能上限或具体效果的信息,这些内容暂未提供。