openclaw-serper技能使用说明
2026-04-01
新闻来源:网淘吧
围观:13
电脑广告
手机广告
Serper
通过Serper API进行Google搜索。不仅获取结果,还会通过trafilatura读取实际网页以提取干净的完整文本内容。不仅仅是片段——是完整的文章文本。
约束
此技能已获取并提取完整的页面内容。请勿对由此技能返回的URL使用WebFetch、web_fetch、WebSearch、浏览器工具或任何其他URL抓取/浏览工具。内容已包含在输出中。切勿进行单独的抓取跟进——您需要的一切都在结果中。

查询准则
精心构建一个良好的搜索查询。这通常就足够了。
每次调用会返回多个包含完整页面文本的结果——您通过单个查询即可获得广泛的覆盖范围。不要运行多次搜索来"探索"一个主题。一个精心选择且模式正确的查询即可涵盖。
最多两次调用如果用户的请求确实涵盖两个不同的主题(例如,"比较X与Y",其中X和Y需要单独的搜索,或者一个默认+ 一个当前调用用于不同的方面)。绝不超过两次。
请勿:
- 为了"获取更多结果"而用不同的措辞运行相同的查询
- 进行序列化搜索以“深入挖掘”——完整页面内容本身已具备深度
- 先执行一次搜索寻找信息,再执行后续搜索跟进——充分利用已获取的内容
两种搜索模式
严格区分两种模式。请根据查询需求选择合适模式:
默认模式——通用搜索(全时段)
- 全时段谷歌网页搜索返回5条结果每条结果均附完整页面内容
- 适用场景:通用问题、研究调查、操作指南、常青话题、产品信息、技术文档、对比分析、教程指南等非时效性内容
实时模式——新闻与近期资讯
- 近一周谷歌网页搜索(3条结果)+ 谷歌新闻(3条结果),每条结果均附完整页面内容
- 适用场景:新闻报道、时事动态、最新进展、突发新闻、官方公告等时效性内容
模式选择指南
| 查询特征指示 | 对应模式 |
|---|---|
| 当查询包含“X如何运作”“X是什么”“解释X”等表述时 | 默认 |
| 产品研究、对比、教程 | 默认 |
| 技术文档、指南 | 默认 |
| 历史话题、常青内容 | 默认 |
| “新闻”、“最新”、“今天”、“本周”、“近期” | 当前 |
| “发生了什么”、“突发”、“宣布”、“发布” | 当前 |
| 时事、政治、体育比分、股价 | 当前 |
地区
默认为全球— 无国家过滤器,英文结果。这仅适用于英文查询。
你必须始终设置--gl和--hl当以下任一情况为真时:
- 用户的消息是非英文语言
- 您构建的搜索查询使用非英语语言
- 用户提及了特定国家、城市或地区
- 用户在非英语语境中要求本地结果(价格、新闻、商店等)
如果用户用德语书写,您**必须**传递--gl de --hl de。没有例外。
| 场景 | 标志 |
|---|---|
| 英文查询,无指定国家目标 | (省略 --gl 和 --hl) |
| 德语查询 **或** 用户用德语书写 **或** 针对德国/奥地利/瑞士 | --gl de --hl de |
| 法语查询 **或** 用户用法语书写 **或** 针对法国 | --gl fr --hl fr |
| 任何其他非英语语言/国家 | --gl XX --hl XX(ISO 代码) |
经验法则:如果查询字符串包含非英语单词,则设置--gl和--hl以匹配该语言。
如何调用
python3 scripts/search.py -q "QUERY" [--mode MODE] [--gl COUNTRY] [--hl LANG]
示例
# English, general research
python3 scripts/search.py -q "how does HTTPS work"
# English, time-sensitive
python3 scripts/search.py -q "OpenAI latest announcements" --mode current
# German query — set locale + current mode for news/prices
python3 scripts/search.py -q "aktuelle Preise iPhone" --mode current --gl de --hl de
# German news
python3 scripts/search.py -q "Nachrichten aus Berlin" --mode current --gl de --hl de
# French product research
python3 scripts/search.py -q "meilleur smartphone 2026" --gl fr --hl fr
输出格式
脚本流式传输一个 JSON 数组。第一个元素是元数据,其余是包含完整提取内容的结果:
[{"query": "...", "mode": "default", "locale": {"gl": "world", "hl": "en"}, "results": [{"title": "...", "url": "...", "source": "web"}]}
,{"title": "Page Title", "url": "https://example.com", "source": "web", "content": "Full extracted page text..."}
,{"title": "News Article", "url": "https://news.com", "source": "news", "date": "2 hours ago", "content": "Full article text..."}
]
| 字段 | 描述 |
|---|---|
标题 | 页面标题 |
网址 | 源 URL |
来源 | "web"、"news"或"knowledge_graph" |
内容 | 完整提取的页面文本(如果提取失败,则回退到搜索摘要) |
日期 | 在可用时出现(新闻结果总是出现,网页结果有时出现) |
CLI 参考
| 标志 | 描述 |
|---|---|
-q, --query | 搜索查询(必需) |
-m, --mode | 默认(所有时间,5个结果)或当前(过去一周 + 新闻,各3个) |
--gl | 国家代码(例如de,us,fr,at,ch)。默认:world |
--hl | 语言代码(例如en,de,fr默认:en |
边界情况
- 如果trafilatura无法从页面提取内容,结果将回退到搜索摘要。
- 某些网站完全禁止爬取——你只能得到摘要。
- 如果返回零个结果,脚本将以
{"error": "未找到结果", "query": "..."}退出。 - Serper API密钥从技能目录中的
.env文件加载。如果缺失,脚本将退出并显示设置说明。
文章底部电脑广告
手机广告位-内容正文底部


微信扫一扫,打赏作者吧~