如何将YouTube频道所有视频添加到播放列表?
问题:如何通过YouTube API将频道所有视频添加到播放列表
根据Stack Overflow上的回答,YouTube API v3对*Watch Later(稍后观看)*列表的访问权限十分有限,因此我将问题限定为如何将频道的所有视频添加到自定义播放列表。
尽管YouTube API v3似乎无法操作Watch Later列表,但PocketTube浏览器扩展却能访问并管理它。它是如何实现的?难道是使用了v2或v1版本的API?另外PocketTube的部分操作速度比预期慢很多。
我梳理的实现流程及疑问
我尝试通过YouTube API获取频道信息来遍历视频分页,示例请求如下:
https://www.googleapis.com/youtube/v3/channels?part=contentDetails&key={{YOUTUBE_API_KEY}}&forUsername={{CHANNEL_USERNAME}}&order=date&maxResults=50以Veritasium频道为例,我得到了如下响应:
{ "kind": "youtube#channelListResponse", "etag": "rKBMFgDUZ01YcV1szgI433m_NI4", "pageInfo": { "totalResults": 1, "resultsPerPage": 50 }, "items": [ { "kind": "youtube#channel", "etag": "fdmldzetq8235Eh_T--brsjat6M", "id": "UCHnyfMqiRRG1u-2MsSQLbXA", "contentDetails": { "relatedPlaylists": { "likes": "", "uploads": "UUHnyfMqiRRG1u-2MsSQLbXA" } } } ] }响应里只返回了该频道的uploads播放列表ID,接下来该如何获取这个频道的所有视频?
是否可以通过YouTube API将频道的所有视频批量添加到播放列表?是否需要OAuth密钥?这个方案是否可行?
若能提供实现脚本我将十分感激,我通常使用TypeScript或Bash编写这类脚本,其他语言也可以。
参考文献
- Stack Overflow回答:Is there a way to get the "Watch Later" playlist using YouTube API v3?
- Stack Overflow问题:YouTube API to fetch all videos on a channel
- 该问题的回答看起来比较奇怪,问题本身是关于获取频道所有视频,但回答大多围绕播放列表中的视频展开。
内容的提问来源于stack exchange,提问作者psygo
相关产品推荐
相关产品推荐

