PickSkill
← Back

ddg-search

DuckDuckGo 搜索工具 - 无需 API key 的网页搜索替代方案

SKILL.md
Rendered from GitHub raw
View raw ↗

name: ddg-search description: DuckDuckGo 搜索工具 - 无需 API key 的网页搜索替代方案 metadata: { "openclaw": { "emoji": "🦆", "requires": { "bins": ["bash", "curl"] } } }

DuckDuckGo Search 🦆

使用 DuckDuckGo 进行网页搜索,无需 API key,是 web_search 的理想替代方案。

概述

ddg-search 让你可以:

  • 进行免费的网页搜索
  • 获取搜索结果和链接
  • 支持多个查询
  • 无需注册或 API key

设置

前置要求

  • Bash: 脚本运行
  • curl: HTTP 请求

安装

  1. 复制脚本到你的 workspace:
cd ~/clawd
mkdir -p scripts
cp [path/to]/ddg-search.sh scripts/
chmod +x scripts/ddg-search.sh

使用方法

基本搜索

./scripts/ddg-search.sh "搜索关键词"

搜索示例

# 搜索技术文档
./scripts/ddg-search.sh "OpenClaw AI assistant skills"
 
# 搜索新闻
./scripts/ddg-search.sh "latest AI news 2026"
 
# 搜索教程
./scripts/ddg-search.sh "how to install homebrew"

输出格式

搜索结果包含:

  • 标题
  • 描述/摘要
  • 链接 URL

示例输出:

搜索: OpenClaw AI assistant skills

1. OpenClaw - AI Assistant Framework
   https://github.com/openclaw/openclaw
   OpenClaw is an AI assistant framework...

2. OpenClaw Skills Hub
   https://github.com/90le/openclaw-skills-hub
   A GitHub repository for OpenClaw AI assistants...

3. 如何使用 OpenClaw 技能
   https://docs.openclaw.ai/skills
   详细指南...

高级用法

搜索并保存结果

./scripts/ddg-search.sh "查询关键词" > search-results.txt

搜索特定网站

./scripts/ddg-search.sh "关键词 site:github.com"

搜索文件类型

./scripts/ddg-search.sh "关键词 filetype:pdf"

多关键词搜索

./scripts/ddg-search.sh "keyword1 AND keyword2"

使用场景

场景 1: 查找技术文档

./scripts/ddg-search.sh "OpenClaw documentation"

场景 2: 研究 API

./scripts/ddg-search.sh "GitHub API endpoints"

场景 3: 学习教程

./scripts/ddg-search.sh "bash scripting tutorial"

场景 4: 查找工具

./scripts/ddg-search.sh "macOS automation tools"

场景 5: 调试问题

./scripts/ddg-search.sh "error: command not found jq"

与 web_fetch 配合

搜索后获取详细内容:

# 1. 搜索
./scripts/ddg-search.sh "OpenClaw skills" | grep "github.com"
 
# 2. 提取 URL
URL="https://github.com/90le/openclaw-skills-hub"
 
# 3. 获取详细内容
curl -s "$URL" | grep -A 5 "description"

替代方案对比

工具 API Key 速度 准确性 适用场景
web_search 需要 商业用途
ddg-search 不需要 日常搜索
wiki-search 不需要 百科知识

限制

DuckDuckGo API 限制

  • 每日请求限制(非付费账户)
  • 搜索结果可能受地区影响
  • 高级搜索功能有限

替代方案

  • 使用 wiki-search 查询百科知识
  • 使用 web_fetch 获取特定页面内容
  • 直接访问搜索引擎网页界面

最佳实践

1. 搜索策略

  • 使用精确的关键词
  • 多尝试不同的查询方式
  • 结合多种搜索方法

2. 结果验证

  • 检查链接有效性
  • 验证内容来源
  • 交叉验证重要信息

3. 搜索效率

  • 避免过于频繁的请求
  • 缓存搜索结果
  • 使用高级搜索语法

4. 信息提取

  • 使用 grep 过滤结果
  • 提取关键信息
  • 保存有用的链接

搜索技巧

DuckDuckGo Bang 语法

# 搜索特定网站
./scripts/ddg-search.sh "!g keyword"        # Google
./scripts/ddg-search.sh "!github keyword"    # GitHub
./scripts/ddg-search.sh "!docs keyword"     # 文档搜索
 
# 搜索特定平台
./scripts/ddg-search.sh "!stackoverflow problem"

高级操作符

# 精确匹配
./scripts/ddg-search.sh "\"exact phrase\""
 
# 排除关键词
./scripts/ddg-search.sh "keyword -exclude"
 
# 通配符
./scripts/ddg-search.sh "key*word"
 
# 范围搜索
./scripts/ddg-search.sh "price $50..$100"

与其他工具集成

结合 skill-creator

# 查找技能模板
./scripts/ddg-search.sh "OpenClaw skill template"
# 创建新技能

结合 github CLI

# 搜索 GitHub 仓库
./scripts/ddg-search.sh "site:github.com openclaw skills"
# 克隆感兴趣的仓库

结合 summarize

# 搜索长文章
./scripts/ddg-search.sh "AI agents long article"
# 使用 summarize 总结

故障排除

无搜索结果

  • 尝试不同的关键词
  • 检查网络连接
  • 验证 DuckDuckGo 服务状态

搜索结果不相关

  • 调整关键词精确度
  • 使用引号精确匹配
  • 尝试同义词

请求失败

  • 检查 curl 是否安装
  • 验证网络配置
  • 尝试其他搜索方法

自动化脚本

批量搜索

#!/bin/bash
# batch-search.sh
 
keywords=("OpenClaw" "AI assistant" "skills hub")
 
for keyword in "${keywords[@]}"; do
  echo "搜索: $keyword"
  ./scripts/ddg-search.sh "$keyword" > "results/${keyword}.txt"
  sleep 2  # 避免请求过快
done

定期搜索

# 添加到 cron
openclaw cron add \
  --name "daily-news-search" \
  --schedule "0 9 * * *" \
  --command "./scripts/ddg-search.sh 'AI news' > memory/daily-news.txt"

搜索通知

#!/bin/bash
# search-and-notify.sh
 
keyword=$1
results=$(./scripts/ddg-search.sh "$keyword")
 
# 如果有结果,发送通知
if [ -n "$results" ]; then
  echo "找到 $keyword 的搜索结果!"
  echo "$results"
fi

扩展功能

搜索历史记录

#!/bin/bash
# search-history.sh
 
HISTORY_FILE="memory/search-history.txt"
 
echo "$(date '+%Y-%m-%d %H:%M') - $*" >> "$HISTORY_FILE"
./scripts/ddg-search.sh "$*"

搜索结果分析

#!/bin/bash
# analyze-search.sh
 
results=$(./scripts/ddg-search.sh "$1")
 
# 统计结果数量
count=$(echo "$results" | grep -c "^[0-9]\+\.")
 
# 提取所有链接
links=$(echo "$results" | grep -o "https://[^ ]*")
 
echo "搜索结果数: $count"
echo "链接数: $(echo "$links" | wc -l)"

贡献

欢迎改进!请在 GitHub 上提交 issue 或 PR。

仓库

https://github.com/90le/openclaw-skills-hub

作者

Created by Xiaoqiu (小丘) - OpenClaw AI assistant


自由搜索,无需限制! 🦆