SuperAPI AI 工具集

har-derived-api-client

编程与开发

查看项目

更新于 10-16 07:23

技能介绍

用途:先用真实浏览器操作一次网站并录制网络流量为 HAR,再把 HAR 提炼成该站点的私有 JSON API,之后用普通 HTTP 直接调用,避免每次请求都驱动浏览器。适用于无公开 API 但页面明显拉取 JSON 的场景,如自动补全、搜索、信息流、结算 XHR,或为某站点构建 CLI/客户端。

主要能力:覆盖 Hermes 各浏览器通路,包括本地 browser_navigate 后端,以及 Browserbase、Browser-Use、Firecrawl 等云/远程后端和 /browser connect 的 CDP 端点。提供两个捕获脚本:本地启动的浏览器用 har_capture.py(基于 Playwright 的 record_har_path);通过 CDP 连接的浏览器用 har_capture_cdp.py(connect_over_cdp 并监听 request/response 事件组装 HAR)。har_to_client.py 过滤 XHR/fetch/JSON,按端点分组,打印参数、请求头、请求体样本、响应状态与内容类型,并输出重放提示(User-Agent、cookie/auth 是否存在)。

使用方式:捕获需 Playwright 与浏览器二进制,命令为 pip install playwright 然后 playwright install chromium --no-shell;重放只需 requests/httpx 或 curl,无需 API 密钥。典型流程:用 har_capture.py 或 har_capture_cdp.py 录制,动作规格支持 fill:SELECTOR:TEXT、press:SELECTOR:KEY、click:SELECTOR、goto:URL、sleep:SECONDS,按顺序执行;再用 har_to_client.py 加 --host 限定域名、--max-body 限制打印体积;最后按打印出的方法、路径、查询参数、请求体与重放提示编写客户端,并用终端无浏览器测试。

限制:只捕获与重放,不绕过认证、不解验证码、不规避机器人检测;需要登录会话时须沿用捕获到的请求头与 cookie,而非伪造。默认库 User-Agent 常被 403,应使用重放提示中的浏览器 UA。动作失败会导致 HAR 未写入;服务端渲染页面无 XHR 可提取;防抖/联想请求需加 sleep;认证端点依赖会过期的凭证,401 时需重新捕获;HAR 含实时密钥,应视为敏感文件并在提取后删除;私有 API 可能随时变动,需重跑捕获到提取流程。选错捕获脚本会得到空 HAR:本地启动用 har_capture.py,CDP 连接用 har_capture_cdp.py。无头 Chrome UA 可能被识别,云后端捕获的客户端重放更可靠。