苏米注:web-access 是一个让 AI 能够像真人一样浏览网页的 Skill,通过 CDP 直连 Chrome 浏览器,可以执行登录、点击、填表、抓取社交媒体内容等复杂任务。这篇文章我来详细解析它的核心功能和使用方法。
一、web-access 是什么
web-access 是一个全能型联网操作 Skill,让 AI 能够执行几乎所有的浏览器任务:
- 智能搜索 — 快速发现信息来源
- 网页抓取 — 从页面提取特定内容
- 登录态操作 — 使用你已有的登录状态
- 交互操作 — 点击、滚动、填表,像真人一样
- 社交媒体 — 小红书、微博、推特等内容抓取
- 动态渲染 — 处理 JavaScript 动态页面
二、核心优势
1. 像人一样思考
web-access 遵循"浏览哲学",不是机械执行预设步骤:
- 明确目标 — 先定义成功标准
- 灵活选择 — 根据实际情况选择最佳路径
- 过程校验 — 每一步都对照目标,发现偏差立即调整
- 完成判断 — 达成目标即停止,不过度操作
苏米注:这意味着它不是盲目执行命令,而是带着目标在页面中探索,遇到障碍就解决,发现内容不够就深入。
2. 天然携带登录态
通过 CDP(Chrome DevTools Protocol)直连日常 Chrome 浏览器,所有操作在真实浏览器环境中进行:
- 无需重复登录
- 保持个性化设置
- 可访问需要权限的内容
- 不干扰正常使用(在后台 tab 中操作)
3. 多层次工具链
根据任务性质自动选择最合适的工具:
| 场景 | 工具选择 |
|---|---|
| 快速搜索、发现信息 | WebSearch |
| 提取特定网页内容 | WebFetch / Jina Reader |
| 获取 HTML 结构 | curl |
| 需要登录或交互 | 浏览器 CDP |
| 社交媒体、动态页面 | 浏览器 CDP |
三、实际应用场景
场景 1:信息核实
当你需要核实一条信息的真实性时,web-access 会:
- 通过搜索引擎找到一手来源(官网、官方平台)
- 直接访问原文阅读完整内容
- 不依赖二手报道,避免循环印证假象
典型应用:政策法规解读、企业公告核实、学术声明查证
场景 2:社交媒体内容获取
抓取小红书、微博等平台的内容时,web-access 会:
- 在你的浏览器中打开目标页面
- 像真人一样滚动、点击、展开
- 提取文本、图片、视频链接
- 任务完成后自动清理
场景 3:并行调研
当需要调研多个项目时,web-access 可以:
- 启动多个子 Agent 并行执行
- 每个子 Agent 在独立的 tab 中操作
- 总耗时约等于单个子任务时长
- 节省主 Agent 的 token 消耗
适用场景:竞品分析、多源数据汇总、批量信息收集
场景 4:视频内容分析
对于视频内容,web-access 可以:
- 操控 video 元素(播放、暂停、跳转)
- 在任意时间点截图采帧
- 对视频内容进行离散采样分析
四、技术亮点
1. 程序化 + GUI 交互双模式
- 程序化方式:构造 URL、直接操作 DOM —— 速度快、精度高
- GUI 交互:点击按钮、填写表单 —— 可靠性高、不易被反爬
根据网站特性灵活切换,确保任务完成。
2. 智能反爬应对
- 不凭记忆构造 URL(避免参数错误)
- 媒体资源直接提取 URL(精准获取)
- 合理控制请求频率(避免触发风控)
- GUI 操作伪装成正常用户行为
3. 站点经验积累
web-access 会记录操作经验:
- 平台特征(架构、反爬行为、登录需求)
- 有效模式(URL 结构、操作策略)
- 已知陷阱(什么会失败以及为什么)
下次访问相同站点时,直接应用经验,提高成功率。
五、为什么需要 web-access?
传统方式的局限
- ❌ API 限制:很多平台没有公开 API
- ❌ 反爬机制:静态抓取容易被封
- ❌ 登录态缺失:无法访问需要权限的内容
- ❌ 动态页面失效:JavaScript 渲染的内容获取不到
web-access 的解决方案
- ✅ 真实浏览器:像人一样操作,网站无法识别
- ✅ 登录态继承:直接使用你的浏览器登录状态
- ✅ 动态渲染支持:JavaScript 执行后完整获取页面
- ✅ 智能适应:根据网站特性选择最佳策略
六、使用方法
前置要求
- Node.js 22+(或使用 ws 模块)
- Chrome 远程调试:在 chrome://inspect/#remote-debugging 中勾选授权
启动 CDP Proxy
bash ~/.openclaw-autoclaw/skills/web-access/scripts/check-deps.sh
脚本会自动检查依赖并启动 Proxy。
API 调用示例
# 创建新 tab
curl -s "http://localhost:3456/new?url=https://example.com"
# 执行 JS 查询 DOM
curl -s -X POST "http://localhost:3456/eval?target=ID" -d 'document.title'
# 点击元素
curl -s -X POST "http://localhost:3456/click?target=ID" -d 'button.submit'
# 截图
curl -s "http://localhost:3456/screenshot?target=ID&file=/tmp/shot.png"
# 关闭 tab
curl -s "http://localhost:3456/close?target=ID"
七、总结
web-access 不仅仅是一个网页抓取工具,它是一个能够像人一样思考、像人一样操作的智能助手:
- 🎯 目标导向:不盲目执行,而是带着任务目标探索
- 🧠 智能适应:根据实际情况调整策略
- 🔒 安全可靠:使用真实浏览器,不破坏网站规则
- ⚡ 高效并行:子 Agent 分治,大幅提升效率
声明:本站原创文章文字版权归本站所有,转载务必注明作者和出处;本站转载文章仅仅代表原作者观点,不代表本站立场,图文版权归原作者所有。如有侵权,请联系我们删除。