OpenClaw Web工具详解

2026-04-30 32

OpenClaw 提供了两款轻量级的 Web 工具,分别用于网页搜索与内容抓取,能够帮助开发者快速获取互联网信息并进行处理。这两个工具分别是 web_search 和 web_fetch,但需要注意的是,它们并不属于浏览器自动化工具。

一、工具概览

1. web_search

用于执行网页搜索,支持多种搜索提供商,包括:

  • Brave(默认)
  • Perplexity Sonar
  • Gemini(基于 Google 搜索 Grounding)
  • Grok
  • Kimi

不同提供商返回的数据形式有所区别:

  • Brave:返回结构化搜索结果(标题、URL、摘要)
  • Perplexity / Gemini:返回带引用的 AI 合成答案

2. web_fetch

用于获取网页内容,并将 HTML 转换为可读文本(Markdown 或纯文本)。

需要注意:

  • 仅执行 HTTP 请求(GET)
  • 不执行 JavaScript
  • 更适合静态页面内容抓取

二、工作原理

1、web_search 工作流程

  • 调用所配置的搜索提供商接口
  • 返回搜索结果或AI生成内容
  • 查询结果默认缓存15分钟(可配置)

2、web_fetch 工作流程

  • 发起 HTTP 请求获取页面内容
  • 使用可读性算法提取主要内容
  • 转换为 Markdown 或文本输出

三、搜索提供商选择

提供商 优点 缺点 API 密钥
Brave(默认) 快速、结构化结果 传统搜索结果;AI 使用条款适用 BRAVE_API_KEY
Perplexity AI 合成答案、引用、实时 需要 Perplexity 或 OpenRouter 访问权限 OPENROUTER_API_KEY 或 PERPLEXITY_API_KEY
Gemini Google 搜索 Grounding、AI 合成 需要 Gemini API 密钥 GEMINI_API_KEY
Grok xAI 网络支持的响应 需要 xAI API 密钥 XAI_API_KEY
Kimi Moonshot 网络搜索能力 需要 Moonshot API 密钥 KIMI_API_KEY / MOONSHOT_API_KEY

四、自动检测机制

当未手动指定 provider 时,OpenClaw 会根据已有 API 密钥自动选择,优先顺序如下:

  • Brave
  • Gemini
  • Kimi
  • Perplexity
  • Grok

如果没有任何密钥,则默认回退到 Brave,并提示配置密钥。

五、如何指定搜索提供商

可以在配置文件中手动指定:

{
“tools”: {
“web”: {
“search”: {
“provider”: “brave”
}
}
}
}

示例:使用 Perplexity

{
“tools”: {
“web”: {
“search”: {
“provider”: “perplexity”,
“perplexity”: {
“apiKey”: “pplx-…”,
“baseUrl”: “https://api.perplexity.ai”,
“model”: “perplexity/sonar-pro”
}
}
}
}
}

六、API 密钥获取方式

1、Brave

  • 前往 Brave Search API 官网注册
  • 选择 Data for Search 计划
  • 获取 API Key

推荐使用命令:

openclaw configure –section web

2、Perplexity / OpenRouter

  • 注册 OpenRouter
  • 充值账户
  • 获取 API Key

支持模型:

  • sonar(快速问答)
  • sonar-pro(默认)
  • sonar-reasoning-pro(深度推理)

3、Gemini

  • 在 Google AI Studio 创建 API Key
  • 配置 GEMINI_API_KEY
  • 默认模型:gemini-2.5-flash

七、web_search 使用说明

基本配置

{
“tools”: {
“web”: {
“search”: {
“enabled”: true,
“maxResults”: 5,
“timeoutSeconds”: 30,
“cacheTtlMinutes”: 15
}
}
}
}

参数说明:

  • query(必填):搜索关键词
  • count:返回结果数量(1–10)
  • country:国家代码(如 US、DE)
  • search_lang:搜索语言
  • ui_lang:界面语言
  • freshness:时间范围过滤

示例

await web_search({
query: “latest AI news”,
count: 10,
freshness: “pw”
});

八、web_fetch 使用说明

配置示例

{
“tools”: {
“web”: {
“fetch”: {
“enabled”: true,
“maxChars”: 50000,
“timeoutSeconds”: 30
}
}
}
}

参数说明:

  • url(必填):网页地址
  • extractMode:markdown 或 text
  • maxChars:最大字符数

工作机制说明:

  • 优先使用 Readability 提取正文
  • 可选使用 Firecrawl 作为补充
  • 默认缓存15分钟
  • 自动限制响应大小

九、使用注意事项

  • web_fetch 不支持 JavaScript 渲染页面
  • 对于需要登录或动态渲染的网站,应使用浏览器工具
  • 工具会自动阻止访问私有网络地址(安全机制)
  • 默认使用类似 Chrome 的 User-Agent
  • 超大页面会被截断处理

十、总结

OpenClaw 的 web_search 与 web_fetch 工具,分别解决了信息搜索与内容提取的问题。

  • web_search:适合获取搜索结果或AI总结
  • web_fetch:适合抓取网页正文内容

两者结合使用,可以高效完成从“搜索信息”到“提取内容”的完整流程。但在面对复杂网页(如JS渲染或需登录页面)时,仍需配合浏览器自动化工具使用。

  • 广告合作

  • QQ群号:4114653

温馨提示:
1、本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。邮箱:2942802716#qq.com(#改为@)。 2、本站原创内容未经允许不得转裁,转载请注明出处“站长百科”和原文地址。
OpenClaw
上一篇: OpenClaw Chrome扩展
OpenClaw
下一篇: OpenClaw PDF工具