halo 的技术博客

返回

一个能搜索、能抓取、能替你点鼠标的AI,到底有多爽?


前言:你还在手动操作网页吗?#

我见过太多人每天重复这样的操作——

打开百度搜个关键词,点开5个链接找信息,复制粘贴到文档里整理,然后再打开另一个网站继续搜……

一个简单的信息收集任务,手动操作至少30分钟。

但如果你的AI助手能自己做这些事呢?

不是那种”我帮你搜一下然后给你链接”的半成品,而是真的能搜索、真的能抓内容、真的能操作浏览器 的完整能力。

OpenClaw 就给了你这样三件套:

  • web_search → 搜索(像你用百度一样,但更快更准)
  • web_fetch → 抓取(一键提取网页正文,过滤广告和废话)
  • browser → 自动化(替你点按钮、填表单、截图、处理弹窗)

今天我把自己踩过的坑和摸索出来的最佳实践,整理成这篇保姆级指南。


一、web_search:让AI替你搜#

1.1 它和普通搜索有什么区别?#

你用百度搜”AI工具推荐”,得到的是一堆广告和SEO内容。

你让 web_search 搜同样的东西,它基于 Brave Search API 返回的,是标题 + 链接 + 摘要 的精简结果,没有广告,没有废话,直接给你有用的信息。

1.2 核心参数(记住这几个就够了)#

参数作用举例
query搜索关键词"OpenClaw 教程"
count返回几条结果5(默认10条)
country搜索哪个地区CN中国、US美国
search_lang搜索结果语言zh中文、en英文
freshness时间范围pd今天、pw本周、pm本月、py今年

实战技巧 :搜索中文内容一定要加 country=CN + search_lang=zh,不然结果可能完全不相关(别问我怎么知道的)。

1.3 一个小场景#

你想了解”2026年AI Agent最新进展”——

web_search({
  "query": "AI Agent 最新进展 2026",
  "count": 5,
  "country": "CN",
  "search_lang": "zh",
  "freshness": "pm"  // 只看最近一个月的
})
plaintext

5秒内,5条最新、最相关的结果就摆在你面前了。


二、web_fetch:一键提取网页正文#

2.1 解决什么问题?#

你找到一篇好文章,但里面有:导航栏、侧边栏广告、“猜你喜欢”推荐、评论区、弹窗……

你只想看正文内容

web_fetch 内置了智能内容提取算法,自动过滤掉所有噪音,只给你文章本身。

2.2 两种模式#

模式输出格式适用场景
markdown保留标题层级、列表、链接需要格式化内容的场景
text纯文本只需要文字信息的场景

我的经验 :90%的情况用 markdown 就对了,它保留了文章结构,后续处理更方便。

2.3 实用技巧#

// 抓取一篇文章,限制5000字符(省钱)
web_fetch({
  "url": "https://example.com/long-article",
  "extractMode": "markdown",
  "maxChars": 5000
})
plaintext

maxChars 是个被低估的参数。很多长文章你根本不需要全部内容,限制字符数可以节省 token 消耗,提高处理速度。

2.4 web_fetch 的局限性#

它不能做的事

  • ❌ 处理需要登录的页面(Cookie、Token)
  • ❌ 渲染 JavaScript 动态内容
  • ❌ 处理验证码

这些场景就需要用到第三件套了。


三、browser:让AI替你操作浏览器#

3.1 这是什么级别的武器?#

如果说 web_search 是”帮你搜”,web_fetch 是”帮你读”,那 browser 就是**“帮你做”** 。

基于 Playwright 框架,它能:

  • ✅ 打开网页、导航跳转
  • ✅ 点击按钮、填写表单
  • ✅ 处理弹窗、下拉选择
  • ✅ 截图保存、页面快照分析
  • ✅ 执行 JavaScript
  • ✅ 管理 Cookie 和登录状态

3.2 支持的操作类型#

操作说明实际用途
click点击元素点”同意Cookie”、点”下一页”
type输入文本填搜索框、填表单
press按键盘回车提交、Ctrl+C复制
hover鼠标悬停触发下拉菜单
drag拖拽调整滑块、拖拽排序
select下拉选择选择省份、选择分类
fill填充表单一键填写整个表单
resize调整窗口测试响应式布局
wait等待加载等待AJAX请求完成

3.3 两种运行模式#

模式特点适用场景
沙箱模式隔离环境,安全性高处理不可信网页
主机模式直接运行,性能更好需要访问本地资源

3.4 一个真实案例:自动化登录 + 数据采集#

假设你需要每天从某个需要登录的网站采集数据:

Step 1: browser.open("https://target-site.com/login")
Step 2: browser.act(type="fill", 目标="用户名输入框", text="your_username")
Step 3: browser.act(type="fill", 目标="密码输入框", text="your_password")
Step 4: browser.act(type="click", 目标="登录按钮")
Step 5: browser.act(type="wait", 目标="页面加载完成")
Step 6: browser.navigate("https://target-site.com/data-page")
Step 7: browser.snapshot() → 获取页面结构
Step 8: browser.act(type="click", 目标="导出按钮")
plaintext

整个过程不需要你碰一下鼠标。


四、三件套的配合使用#

这三件套的真正威力,在于组合使用

典型工作流#

1. web_search("关键词") → 搜索到10个相关链接
2. web_fetch(最相关的3个URL) → 提取正文内容
3. AI 整理分析 → 生成报告
4. browser(填表单/发邮件) → 自动发布或发送
plaintext

实际例子:竞品分析报告#

1. web_search("竞品A 功能对比", count=5)
2. web_search("竞品B 功能对比", count=5)
3. web_fetch(3篇深度评测文章)
4. AI 生成对比表格 + 分析报告
5. 保存为 Markdown 文件
plaintext

过去需要半天的工作,现在10分钟搞定。


五、那些文档里不会告诉你的坑#

坑1:搜索结果质量参差不齐
中文搜索用百度经常触发安全验证,用 Bing CN 有时不相关。
解决方案 :多引擎轮询,Bing CN + Bing INT + DuckDuckGo 三个一起用,取最好的结果。

坑2:web_fetch 抓不到动态页面
很多现代网站用 JavaScript 渲染内容(比如 SPA),web_fetch 只能拿到一个空壳。
解决方案 :检测到空内容时自动降级到 browser 工具。

坑3:浏览器自动化不稳定
网络延迟、页面加载顺序变化、弹窗随机出现……这些都会导致自动化脚本中断。
解决方案 :善用 wait 操作等待特定元素出现,而不是硬编码等待时间。

坑4:Google 搜索被屏蔽
直接 fetch Google 搜索在国内可能被屏蔽。
解决方案 :用 Google HK (google.com.hk) 或 Bing INT 替代。


六、总结#

工具一句话定位你该用它来
web_search帮你搜快速获取搜索结果
web_fetch帮你读提取网页正文内容
browser帮你做操作浏览器、处理复杂交互

我的建议

  • 90%的信息获取任务,web_search + web_fetch 就够了
  • 需要登录、动态渲染、复杂交互时,才动用 browser
  • 永远先用 web_search 搜一圈,再用 web_fetch 深入抓取——别上来就开浏览器

OpenClaw 目前 GitHub 310k+ Star,开源免费,支持 Claude、GPT、本地模型。如果你还没有体验过”让AI帮你上网”的感觉,强烈建议试试。


写在最后#

AI 助手的核心价值不在于”能和你聊天”,而在于能帮你做事

搜索、抓取、自动化——这三件套覆盖了你日常90%的网页操作需求。

省下来的时间,才是真正的生产力。


觉得有用的话,点个赞,关注我,后续会分享更多 OpenClaw 实战技巧 👍

💬 评论区#

我用AI助手三件套,把一天的网页操作压缩到了3分钟
https://blog.halo26812.eu.org/blog/openclaw-web-tools-guide
Author halo
Published at 2026年4月7日
版权声明 CC BY-NC-SA 4.0
Comment seems to stuck. Try to refresh?✨