| name | union-search-skill |
| description | 当用户需要跨多个平台搜索内容时使用此技能,包括 GitHub、Reddit、小红书、抖音、Bilibili、YouTube、Twitter、知乎、微博、微信、头条、小宇宙FM、集思录、Google、Tavily、秘塔搜索、火山引擎、Exa,以及通用搜索引擎(DuckDuckGo、Brave、Yahoo、Bing、Wikipedia、百度、搜狗、360搜索、Yandex、Ecosia、Qwant、Startpage),或从多个图片平台批量下载图片。共 38 个搜索模块,提供统一的搜索接口,支持结构化输出格式、结果过滤、排序、自动响应归档和批量图片下载。 |
目的
提供跨多个平台的统一搜索能力,支持 38 个平台的内容搜索和数据获取。所有搜索脚本遵循标准化的输入/输出约定,提供可靠、可读的结果。
何时使用此技能
- 跨多个平台搜索内容(GitHub、Reddit、社交媒体、搜索引擎)
- 按时间范围、互动指标或内容类型过滤结果
- 批量搜索/下载并归档原始响应
- 需要无 API 密钥的搜索方案
可用的搜索工具
所有脚本位于 scripts/ 目录,每个模块都有详细的 README 文档。
开发者与社区搜索
社交媒体与网络搜索
注意: 火山引擎的图片搜索功能已集成到 union_image_search 模块
通用搜索引擎(无需 API 密钥)
其他搜索工具
快速开始
1. 配置凭据
在项目根目录创建 .env 文件(参考 .env.example):
cp .env.example .env
详细配置指南: 参考 API 凭据获取指南
2. 执行搜索
所有脚本支持类似的命令行参数:
python scripts/union_search/union_search.py "machine learning" --group dev --limit 3
python scripts/github/github_search.py repo "machine learning" --language python --stars ">1000"
python scripts/xiaohongshu/tikhub_xhs_search.py --keyword "美食" --limit 10
python scripts/union_image_search/multi_platform_image_search.py --keyword "cats" --num 50
python scripts/duckduckgo/duckduckgo_search.py "Python programming"
3. 查看结果
- 终端输出: 格式化的 Markdown 表格
- 原始响应: 保存在
responses/ 目录(使用 --save-raw 参数)
使用工作流
标准搜索流程
- 运行前: 验证
.env 配置存在且包含有效凭据
- 运行: 从技能目录直接执行脚本
- 运行后: 检查终端输出和
responses/ 目录中的原始响应文件
通用参数
大多数工具支持以下参数:
--limit / -n: 返回的结果数量
--json: JSON 格式输出
--pretty: 格式化 JSON 输出
--markdown: Markdown 格式输出
-o / --output: 保存输出到文件
--save-raw: 保存原始 API 响应到 responses/ 目录
最佳实践
结果过滤:
- 使用
--limit 控制输出量
- 应用时间过滤器获取最新内容
- 按互动指标排序以找到热门内容
响应管理:
- 永远不要将完整的原始 JSON 粘贴到对话中
- 需要完整数据访问时引用
responses/ 文件
- 使用 grep/jq 从保存的响应中提取特定字段
多平台搜索:
- 为不同平台依次运行脚本
- 使用保存的响应文件比较跨平台结果
参考文档
详细的配置、限制和问题排查信息,请参考 references/ 目录:
常见问题速查
| 问题 | 解决方案 | 详细文档 |
|---|
| 缺少凭据 | 检查 .env 文件配置 | API 凭据 |
| API 速率限制 | 降低请求频率或限制结果数量 | 速率限制 |
| 网络超时 | 增加超时值或使用代理 | 问题排查 |
| 无效参数 | 查看模块 README 或使用 --help | 各模块 README |
| 403 Blocked | 使用代理或降低请求频率 | 问题排查 |
| 平台特定问题 | 查看平台说明 | 平台说明 |
项目结构
union-search-skill/
├── scripts/ # 所有搜索脚本(38 个模块)
│ ├── union_search/ # 联合搜索(统一入口)
│ ├── union_image_search/ # 多平台图片搜索
│ ├── cli/ # 命令行统一搜索入口
│ ├── github/ # GitHub 搜索
│ ├── reddit/ # Reddit 搜索
│ ├── xiaohongshu/ # 小红书搜索
│ ├── douyin/ # 抖音搜索
│ ├── bilibili/ # Bilibili 搜索
│ ├── youtube/ # YouTube 搜索
│ ├── twitter/ # Twitter 搜索
│ ├── zhihu/ # 知乎搜索
│ ├── weibo/ # 微博搜索
│ ├── wechat/ # 微信公众号搜索
│ ├── toutiao/ # 今日头条搜索
│ ├── xiaoyuzhoufm/ # 小宇宙FM播客搜索
│ ├── jisilu/ # 集思录金融搜索
│ ├── google_search/ # Google 搜索
│ ├── tavily_search/ # Tavily 搜索
│ ├── exa_search/ # Exa 神经搜索
│ ├── metaso/ # 秘塔搜索
│ ├── volcengine/ # 火山引擎搜索
│ ├── duckduckgo/ # DuckDuckGo 搜索
│ ├── brave/ # Brave 搜索
│ ├── yahoo/ # Yahoo 搜索
│ ├── bing/ # Bing 搜索
│ ├── wikipedia/ # Wikipedia 搜索
│ ├── baidu/ # 百度搜索
│ ├── sogou/ # 搜狗搜索
│ ├── so360/ # 360搜索
│ ├── yandex/ # Yandex 搜索
│ ├── ecosia/ # Ecosia 搜索
│ ├── qwant/ # Qwant 搜索
│ ├── startpage/ # Startpage 搜索
│ ├── jina/ # Jina 网页提取
│ ├── url_to_markdown/ # URL转Markdown
│ ├── wolfram/ # Wolfram 计算引擎
│ ├── downloader/ # 通用下载工具
│ └── rss_search/ # RSS 搜索
├── references/ # 参考文档
│ ├── api_credentials.md # API 凭据获取指南
│ ├── rate_limits.md # 速率限制说明
│ ├── platform_notes.md # 平台特定说明
│ ├── troubleshooting.md # 问题排查指南
│ └── google_search_guide.md # Google 搜索技巧
├── .env.example # 环境变量模板
├── SKILL.md # 本文件
└── README.md # 项目说明
配置优先级
所有工具支持三种配置方式(优先级从高到低):
- 命令行参数:
--token YOUR_TOKEN 或 --api-key YOUR_KEY
- 环境变量: 在项目根目录的
.env 文件中配置
- 配置文件: 工具特定的配置文件(如 GitHub 的
~/.github-search.json)
获取帮助
- 模块文档: 每个模块都有详细的 README(
scripts/*/README.md)
- 参考文档: 查看
references/ 目录中的详细指南
- 命令行帮助: 使用
--help 参数查看脚本用法
- 项目 README: 查看
README.md 了解项目概览