关于 scraping-youtube-playlist
scraping-youtube-playlist 用于采集 YouTube 播放列表的视频元数据,供后续分析。支持输入播放列表链接或搜索关键词,并可限制结果数量及自定义字段映射。
主要功能
- 01按链接或关键词抓取播放列表
- 02获取视频和频道元数据
- 03限制结果数量
- 04用 JavaScript 转换输出
- 05导出为 CSV 或 JSON
适用场景
- 01采集播放列表的视频数据
- 02整理播放列表元数据以供分析
MCP 相关
如有 Apify MCP,可调用 `apidojo~youtube-playlist-scraper` Actor 并传入所需参数。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ apidojo-io/ apidojo-skills --skill scraping-youtube-playlist安装后在 Claude Code 中输入/scraping-youtube-playlist确认已加载。
详细介绍
抓取 YouTube 播放列表
原始数据采集。不假设具体用例——返回完整数据集,供后续分析使用。
输入
| 参数 | 类型 | 必填 | 默认值 | 备注 |
|---|---|---|---|---|
startUrls | 数组 | 可选 | [] | YouTube 播放列表 URL |
keywords | 数组 | 可选 | [] | 用于查找播放列表的搜索关键词 |
gl | 字符串 | 可选 | us | 国家/地区代码(例如 US) |
hl | 字符串 | 可选 | en | 语言代码(例如 en) |
sort | 字符串 | 可选 | r | 排序方式 |
maxItems | 数字 | 可选 | 不限 | 返回的视频数量上限 |
customMapFunction | 字符串 | 可选 | — | 用于转换每个输出对象的 JavaScript 函数 |
运行方法
使用 run_actor.js(推荐)
# Quick answer (table)
node scripts/run_actor.js --actor "apidojo~youtube-playlist-scraper" --input '{"startUrls": ["https://www.youtube.com/playlist?list=PLABCDE12345"], "maxItems": 50}'
# Save as CSV
node scripts/run_actor.js --actor "apidojo~youtube-playlist-scraper" --input '{"startUrls": ["https://www.youtube.com/playlist?list=PLABCDE12345"], "maxItems": 50}' --output results.csv --format csv
# Save as JSON
node scripts/run_actor.js --actor "apidojo~youtube-playlist-scraper" --input '{"startUrls": ["https://www.youtube.com/playlist?list=PLABCDE12345"], "maxItems": 50}' --output results.json --format json
REST API 备用方案
curl -X POST "https://api.apify.com/v2/acts/apidojo~youtube-playlist-scraper/runs" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"startUrls": ["https://www.youtube.com/playlist?list=PLABCDE12345"], "maxItems": 50}'
如果可以使用 Apify MCP:
使用 Apify MCP 的 call_actor 工具,并指定 actor apidojo~youtube-playlist-scraper 和上述输入。
输出字段
| 字段 | 类型 | 描述 |
|---|---|---|
type | 字符串 | 始终为 video |
id | 字符串 | 视频 ID |
title | 字符串 | 视频标题 |
url | 字符串 | 视频 URL |
description | 字符串 | 视频描述 |
duration | 数字 | 时长(秒) |
views | 数字 | 观看次数 |
likes | 数字 | 点赞数 |
status | 字符串 | 可用状态 |
channel.id | 字符串 | 频道 ID |
channel.name | 字符串 | 频道名称 |
channel.url | 字符串 | 频道 URL |
keywords | 数组 | 视频标签/关键词 |
isLive | 布尔值 | 是否为直播 |
isPrivate | 布尔值 | 是否为私享内容 |
thumbnails | 数组 | 缩略图对象 |
边缘情况
- 私享播放列表:返回 0 条结果。告知用户该播放列表为私享内容。
- 已删除的播放列表:返回错误或空结果。请检查 URL。
- 超大型播放列表:使用 maxItems 限制结果数量,避免运行时间过长。
- Mix 播放列表(YouTube 自动生成):行为可能与用户创建的播放列表不同。
评论
支持 Markdown