用途
该技能用于按分类和国家发现 YouTube 上正在流行和病毒式传播的视频。它基于 Apify 平台上的 apidojo YouTube Trending Scraper 实现,当用户提出查找热门或病毒视频的需求时触发。
主要能力
- 按趋势分类筛选:支持 n(now,即当前全部)、music、movies、gaming。
- 按国家筛选:通过 gl 参数指定 ISO 国家代码,例如 us、gb、de。
- 按语言筛选:通过 hl 参数指定语言代码,例如 en。
- 限制返回数量:通过 maxItems 参数设置最大视频数,默认不限。
- 自定义转换:通过 customMapFunction 传入 JavaScript 函数,对每个输出对象进行转换。
- 评分与排名:对每个视频按以下公式打分:
- 播放量归一化 0-1(上限 1000 万),权重 0.40
- 点赞数归一化 0-1(上限 50 万),权重 0.35
- 时效性(趋势视频按定义固定为 1.0),权重 0.25
- score = 0.40 * min(views / 10000000, 1.0) + 0.35 * min(likes / 500000, 1.0) + 0.25
- 分级分类:
- 得分 ≥ 0.70:A 级,MEGA_VIRAL
- 得分 0.40–0.69:B 级,TRENDING
- 得分 < 0.40:C 级,RISING
使用方式
输入参数
| 参数 | 类型 | 是否必填 | 默认值 | 说明 |
|---|---|---|---|---|
| type | string | 可选 | n | 趋势分类:n(now)、music、movies、gaming |
| gl | string | 可选 | us | 国家代码(如 US、GB) |
| hl | string | 可选 | en | 语言代码(如 en) |
| maxItems | number | 可选 | 不限 | 返回视频的最大数量 |
| customMapFunction | string | 可选 | — | 用于转换每个输出对象的 JavaScript 函数 |
使用 run_actor.js(推荐)
快速以表格形式查看结果:
node scripts/run_actor.js --actor "apidojo~youtube-trending-scraper" --input '{"type": "n", "gl": "us", "hl": "en", "maxItems": 50}'
保存为 CSV:
node scripts/run_actor.js --actor "apidojo~youtube-trending-scraper" --input '{"type": "n", "gl": "us", "hl": "en", "maxItems": 50}' --output results.csv --format csv
保存为 JSON:
node scripts/run_actor.js --actor "apidojo~youtube-trending-scraper" --input '{"type": "n", "gl": "us", "hl": "en", "maxItems": 50}' --output results.json --format json
REST API 备用方式
curl -X POST "https://api.apify.com/v2/acts/apidojo~youtube-trending-scraper/runs" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"type": "n", "gl": "us", "hl": "en", "maxItems": 50}'
使用 Apify MCP
如果 Apify MCP 可用,使用其 call_actor 工具,actor 为 apidojo~youtube-trending-scraper,并传入上述输入。
适用场景
- 内容创作者或运营人员需要快速了解某国家、某分类下的热门视频趋势。
- 营销或研究场景中需要按播放量、点赞数筛选高传播度视频。
- 需要将趋势数据导出为 CSV 或 JSON 进行进一步分析。
限制与边界情况
- 分类在某国家不可用:部分国家仅有 n(全部),此时回退到 type=n。
- 数据时效性:趋势数据全天变化,返回的是某一时刻的快照。
- music/movies 分类:返回的是完整歌曲或预告片,内容类型与普通视频不同。
- 结果中的直播:isLive=true 的条目为正在进行的直播,如需仅点播内容应过滤。
- 国家代码不匹配:gl 必须是有效的 ISO 国家代码(如 us、gb、de)。