AI时代爬虫开发新玩法:基于Har文件让AI分析HTTP请求
速览
文章提出一种AI时代爬虫/自动化脚本开发新思路:由人工先探索网站并导出Har文件(HTTP Archive格式),再交给AI分析请求细节、时序及依赖关系。相比让AI直接控制浏览器,该方法更省Token、更高效。Har本质为JSON,LLM可直接分析,也可用专用CLI工具快速提取信息。
AI 深度解读
背景
进入2026年下半年,爬虫与自动化脚本开发依然是互联网技术中的重要环节。传统的抓包工具如Reqable、Fiddler或浏览器Dev Tools可以帮助开发者可视化地分析HTTP请求,但这些工具是为人类设计的。在AI Agent时代,AI并不需要可视化图形界面,它需要的是高密度、结构化的上下文信息。因此,如何高效地将HTTP请求的完整历史传递给AI,成为新的痛点。
网络上已有的方案包括:让AI自己控制浏览器(如Web Access/Browser Use),或者使用Firecrawl/Crawl4AI等工具将网页内容转为结构化数据。但前者每步都需要AI思考,耗时长、Token耗费巨大;后者虽然能提取结构化数据,但自动化脚本不仅需要数据,还需要分析请求细节、时序等。因此,需要换一种思路:人类利用自身对网站的快速探索能力,将探索过程中产生的HTTP请求记录下来,直接交给AI分析。
核心内容
原文提出了一种基于Har文件的AI工作流,核心思路是「人工探索 + AI分析」。具体做法是:人类先清空浏览器缓存,手动按预期流程操作被爬网站,触发所有必要的HTTP请求;然后通过浏览器的开发者工具导出Har文件(HTTP Archive格式);最后将这些Har文件交给AI Agent进行分析,提取请求的格式模板、时序、依赖关系等信息,进而生成最终的爬虫或自动化脚本。
Har文件简介
Har(HTTP Archive)是记录浏览器与网站之间HTTP请求和响应的标准文件格式,以JSON存储。每一个Har文件包含一个log对象,其entries数组中记录了每个请求的详细信息:请求方法、URL、头信息、Cookie、查询参数、响应状态码、响应体内容、时间戳、各阶段耗时(send、wait、receive)等。由于Har本质是JSON,LLM可以直接解析;若文件过大,Agent可以调用Python/Node.js CLI工具(内联管道)快速提取关键信息;也可使用专用CLI(如har-skills)进一步节省Token并提高速度。
完整工作流(五个步骤)
-
清空浏览器缓存
确保抓取到的请求历史是完整的,避免因缓存干扰而遗漏关键请求。 -
使用浏览器探索网站
手动按计划执行爬虫/自动化脚本需要模拟的流程:访问页面、点击按钮、提交表单、翻页等,触发所有相关HTTP请求。 -
导出Har文件
在浏览器Dev Tools中将抓取到的HTTP Archive导出为.har文件,保存到工作区(如hars/文件夹)。对于复杂网站,可以分多次导出并为文件语义化命名(如login.har、search.har)。 -
分析清洗Har文件
利用AI Agent对导出的Har文件进行分析,提取关键信息:- 请求格式模板:包括URL、方法、头、参数、请求体结构。
- 时序与依赖关系:找出Authentication机制(如Token在请求序列中的传递方式)、后一个请求的参数如何从前一个请求的Response中提取。
- 过滤无用请求:剔除CSS、图片、预加载等无关请求,只保留与目标功能相关的API请求。
- 输出清洗后的Schema文档(如
schema.md)。
-
生成爬虫/自动化脚本
基于上一步得到的schema.md,AI Agent可直接生成符合需求的爬虫或自动化脚本(如Python requests脚本、Playwright代码等)。
工具对比与选型
原文提到,在写作时Reqable官方尚未发布MCP,作者尝试了一个第三方MCP项目(iambond50-svg/reqable-mcp),后来官方MCP也上线了。但官方MCP暴露过多接口,且需要打开Reqable系统代理,可能与其他系统代理(如VPN)冲突,并且某些请求(如requests库发出的请求、pip下载)会有SSL问题。因此,基于Har文件的方法更加轻量、通用,不依赖特定抓包工具。
关键要点
- 核心思路转变:放弃让AI自主探索网站(慢、费Token),改为人类快速手动探索,再将结果以结构化的Har文件喂给AI分析。
- Har文件是桥梁:Har作为标准JSON格式,天然适合LLM解析;也可通过CLI工具进一步精简,节省Token。
- 工作流五步闭环:清缓存→手动浏览→导出Har→AI分析清洗→生成脚本。
- AI分析的重点:提取请求格式模板、时序依赖(如Token传递)、过滤无用请求(CSS/图片等)。
- 无需依赖特定抓包工具:浏览器原生支持导出Har,不干扰系统代理设置,无SSL冲突。
- 可扩展性:对于大型Har,可使用专用Skill+CLI(如
har-skills)提升效率,减少Token开销。 - 适用场景:爬虫开发、自动化测试、API集成脚本等需要模拟浏览器行为的任务。
意义与影响
-
降低AI Agent在爬虫/自动化中的成本和延迟
传统的AI自主浏览模式(Browser Use等)每一步都需要模型推理,消耗大量Token和时间。人工探索+Har分析的方式将探索成本转移给人类(快速且无Token消耗),AI只需一次性分析结构化数据,大幅提升效率和性价比。 -
简化抓包工具链
不依赖特定抓包软件(如Reqable、Fiddler),仅使用浏览器原生功能即可完成数据收集。避免了因系统代理冲突导致的SSL错误或干扰其他网络请求(如pip、requests库)。 -
提升生成脚本的准确性与可控性
人工手动探索可以确保覆盖所有关键流程,而AI从中提取的请求时序和依赖关系精确度更高,生成脚本的鲁棒性更好。同时,通过清洗过滤无关请求,避免AI被噪声干扰。 -
推动AI与人类协作的新范式
该工作流体现了「人类做机器不擅长的事(快速探索复杂UI),AI做人类不擅长的事(大量结构化数据分析、代码生成)」的分工思想。这种模式不仅适用于爬虫,也可推广至其他需要模拟用户操作的任务。 -
为标准化工具发展提供方向
Har文件本身就是W3C标准的HTTP Archive格式,利用它作为AI输入,有利于催生更多围绕Har的AI预处理工具(如CLI解析库、Skill插件),进一步降低开发者使用AI的门槛。
