Install
openclaw skills install @redfox-data/wechat-channels-crawler视频号作品查询工具。根据用户输入的关键词搜索视频号热门作品,支持按最新、最多点赞、最多收藏和综合排序,结果以结构化表格展示。当用户想要查找视频号热门内容、搜索视频号爆款视频、查询视频号作品数据、了解某类内容在视频号的表现时使用。触发词包括:视频号搜索、视频号作品查询、视频号爆款、视频号热门、视频号内容搜索、搜视频号、微信视频号搜索。
openclaw skills install @redfox-data/wechat-channels-crawler输入关键词 → 搜索视频号热门作品 → 结构化表格展示 → 支持订阅每日推送
输入关键词即可查询视频号热门作品,以结构化表格呈现点赞、评论、转发、收藏等互动数据,帮你快速掌握各类内容在视频号的真实表现。
| 功能 | 说明 |
|---|---|
| 🔍 关键词搜索 | 输入内容主题关键词,返回视频号平台相关作品列表 |
| 📊 多维排序 | 支持按综合、最新、最多点赞、最多收藏四种方式排序 |
| 📋 结构化表格 | 默认展示前 20 条,含作品标题、作者、发布时间、互动数据 |
| 🔔 订阅推送 | 查询后可订阅关键词,每天 10:00 自动查询并推送最新作品 |
# 基础用法:按综合排序搜索
python3 ~/.agents/skills/wechat-channels-crawler/scripts/search_wechat_channels.py "美食"
# 按最新排序
python3 ~/.agents/skills/wechat-channels-crawler/scripts/search_wechat_channels.py "美食" --sort 最新
# 按最多点赞排序
python3 ~/.agents/skills/wechat-channels-crawler/scripts/search_wechat_channels.py "美食" --sort 最多点赞
# 翻页查询
python3 ~/.agents/skills/wechat-channels-crawler/scripts/search_wechat_channels.py "美食" --page 2
# 输出到文件(推荐,避免 Windows GBK 乱码)
python3 ~/.agents/skills/wechat-channels-crawler/scripts/search_wechat_channels.py "美食" -o result.json
| 参数 | 说明 |
|---|---|
keyword | 搜索关键词(必需) |
--sort | 排序方式:综合 / 最新 / 最多点赞 / 最多收藏,默认 综合 |
--page | 页码,从 1 开始,默认 1 |
--size | 每页条数,默认 20,最大 50 |
--output / -o | 输出到 JSON 文件(UTF-8),避免 shell 重定向乱码 |
本脚本仅使用 Python 标准库,无需安装额外依赖。
⚠️ 核心规则:优先提取细分方向词,而非泛化的大类词
| 用户输入 | 处理方式 |
|---|---|
| 无赛道关键词("最近热门作品") | 关键词传空字符串 "",查询全站热门 |
| 有细分词("职场穿搭"、"减脂餐") | 直接搜索,无需拓展 |
| 有泛化词("穿搭"、"美食") | 执行拓展策略(Step 2) |
细分词判断原则:有场景/人群/风格/意图修饰 → 细分词;纯大类无修饰 → 泛化词。
提取精确关键词:从用户描述中提取细分领域词,而非泛化词。例:用户说“帮我找电影领域热门话题”且自称“小众电影、港台文化” → 搜索“小众电影、港台电影、电影乐评”,❌ 而非只搜“电影”。
过滤触发钩子词:用户输入中的「热门文章」「热门作品」「爆款」「热门内容」「查询」「搜索」等词是调用 Skill 的触发钩子,不属于搜索关键词,必须剥离。例:用户说“查询AI热门文章” → 关键词为「AI」,❌ 而非「AI热门文章」。
⚠️ 必须等待用户明确回复后再调用脚本!
| 步骤 | 操作 |
|---|---|
| 1. 生成细分词 | 生成10个适中大小的细分词(趋势词、人群词、场景词、意图词各2-3个),禁止调用脚本 |
| 2. 等待用户回复 | 用户未回复时禁止调用脚本 |
| 3. 执行 | 回复「拓展」→ 10词以英文逗号连接,仅调用一次脚本;回复「不拓展」→ 搜索原关键词 |
输出示例:
我识别到「中产」是较大的分类,推荐以下细分方向:
老钱,轻奢,品质生活,松弛感,高级感穿搭,体面,法式穿搭,律师,医生,品质家居
回复「拓展」将同时搜索这10个词,回复「不拓展」将继续搜索「中产」
python3 ~/.agents/skills/wechat-channels-crawler/scripts/search_wechat_channels.py "<关键词>" [--sort 排序]
脚本返回 JSON:
{
"total": 10877641,
"list": [
{
"title": "作品描述...",
"author": "作者名称",
"like_count": 3052000,
"comment_count": 71000,
"share_count": 510000,
"collect_count": 147000,
"work_url": "https://findermp.video.qq.com/...",
"publish_time": "2026-07-22 14:12:18",
"topics": ["美食", "三明治"],
"duration": 57
}
]
}
字段说明:
| 字段 | 说明 | 字段 | 说明 |
|---|---|---|---|
| title | 作品描述 | share_count | 转发数 |
| author | 作者名称 | collect_count | 收藏数 |
| like_count | 点赞数 | work_url | 视频链接 |
| comment_count | 评论数 | publish_time | 发布时间 |
| topics | 话题标签数组 | duration | 视频时长(秒) |
将返回数据渲染为 Markdown 表格,默认展示前 20 条:
| # | 作品标题 | 作者 | 点赞数 | 评论数 | 转发数 | 收藏数 | 发布时间 |
|---|---------|------|-------|-------|-------|-------|---------|
| 1 | 标题文字 | 作者名 | 305.2w | 7.1w | 51.0w | 14.7w | 07-22 |
数字格式化规则:
320)x.xw 格式(如 1.2w = 12000)发布时间格式化规则:
publish_time 的月-日部分,格式为 MM-DD(如 2026-07-22 14:12:18 → 07-22)标题展示规则:
...在表格下方提示:
当前为第x页,是否查看下一页数据?
使用 AskUserQuestion 询问:
question: "是否查看下一页数据?"
header: "下一页/翻页"
options:
- label: "下一页/翻页" description: "展示下一页数据(续接 #21 开始编号)"
- label: "不用了" description: "仅查看前 20 条"
表格展示完成后,使用 AskUserQuestion 询问:
question: "是否订阅该搜索?订阅后将每天自动推送相关视频号爆款作品数据。"
header: "订阅"
options:
- label: "确认订阅" description: "创建定时任务,每天 10:00 自动查询并推送"
- label: "暂不订阅" description: "仅查看本次数据,不创建定时任务"
使用 qoder_cron 工具创建:
{
"action": "add",
"job": {
"name": "视频号爆款作品订阅 - <关键词>",
"description": "每天查询视频号关键词 <关键词> 的爆款作品数据并推送",
"schedule": {
"kind": "cron",
"expr": "0 10 * * *",
"tz": "Asia/Shanghai"
},
"payload": {
"kind": "agentTurn",
"message": "请执行视频号作品查询:运行 python3 ~/.agents/skills/wechat-channels-crawler/scripts/search_wechat_channels.py \"<关键词>\",将结果整理为表格展示(表头:作品标题 | 作者 | 点赞数 | 评论数 | 转发数 | 收藏数 | 发布时间,展示前 20 条,数字 >= 10000 用 x.xw 格式,发布时间取 MM-DD 格式,标题纯文本不加链接,不展示总条数)。完成后将结果推送到当前对话。"
},
"missedRunPolicy": "skip"
}
}
创建成功后告知用户:"已成功订阅关键词「<关键词>」的视频号爆款作品推送,每天 10:00 将自动查询最新数据并通知你。"
Agent 必须完整展示所有返回数据,禁止省略任何条目。数字必须按规则格式化,发布时间取 MM-DD 格式,标题纯文本不加链接,不展示总条数。
本技能需要 REDFOX_API_KEY 环境变量。
获取方式: 前往 红狐hub 注册并获取 API Key。
配置方式:
方案 1 — 配置文件(推荐):
{ "env": { "REDFOX_API_KEY": "ak_xxxx..." } }
方案 2 — 终端环境变量:
export REDFOX_API_KEY="ak_xxxx..."
| 项目 | 说明 |
|---|---|
| 端点 | POST https://redfox.hk/story/api/sphAllData/searchWork |
| 认证 | Header X-API-Key |
| source 参数 | 视频号作品爬虫-GitHub |
Q:搜索结果为空怎么办? A:可能是关键词过于小众或暂时缺少相关数据。尝试更换关键词重新搜索,如将"母婴好物"改为"母婴"。
Q:排序方式有什么区别? A:「综合」按平台推荐权重排序,「最新」按发布时间倒序,「最多点赞」和「最多收藏」分别按对应互动数据排序。
Q:订阅推送后如何取消?
A:通过 qoder_cron 工具使用 action: "list" 查看已创建的定时任务,找到对应订阅后使用 action: "remove" 删除即可。
Q:数据多久更新一次? A:每天更新昨日数据。订阅推送默认每天 10:00(北京时间)自动执行一次查询。