Youtube API v3 从给定频道获取每个视频 ID
Posted
技术标签:
【中文标题】Youtube API v3 从给定频道获取每个视频 ID【英文标题】:Youtube API v3 get every Video ID from given channel 【发布时间】:2018-10-16 09:23:27 【问题描述】:目前我正在使用它来获取来自给定频道的 videoID 列表:
获取https://www.googleapis.com/youtube/v3/search?order=date&part=snippet&channelId=CHANNEL_ID&type=video&maxResults=50&key=API_KEY
这可行,但是我想从中获取视频的频道在线上有超过 50 个视频。我已经看过这个问题YouTube API to fetch all videos on a channel,但每个解决方案再次在线获取最多 50 个视频。
我怎样才能获得每个视频,而不仅仅是 50 个?
【问题讨论】:
YouTube API to fetch all videos on a channel的可能重复 不,每个解决方案都只列出 50 个视频,再次 您是否将maxResults
参数设置为大于您频道中的视频数量?并在请求中使用了上传 ID 作为频道 ID?
【参考方案1】:
所以我有一个解决方案:
(1) 首先,我使用https://www.googleapis.com/youtube/v3/channels?id=CHANNEL_ID&key=API_KEY&part=contentDetails 来获取Uploads Playlist 的id。
(2) 使用https://www.googleapis.com/youtube/v3/playlistItems?playlistId=UPLOAD_ID&key=API_KEY&part=snippet&maxResults=50 我得到前 50 个结果和一个 pageToken。
(3) 使用令牌,我可以从下一页收集 ID: https://www.googleapis.com/youtube/v3/playlistItems?playlistId=UPLOAD_ID&key=API_KEY&part=snippet&pageToken=PAGE_TOKEN&maxResults=50
(4) 通过使用递归方法,我可以使用从(3)中得到的下一个Token来扫描下一页。
【讨论】:
【参考方案2】:以下是 YouTube 开发者频道中的一段视频,它确实帮助了我:https://youtu.be/RjUlmco7v2M。它是针对从 v2 迁移到 v3 的人(我不是),但我一直在观察并学到了很多东西。
【讨论】:
以上是关于Youtube API v3 从给定频道获取每个视频 ID的主要内容,如果未能解决你的问题,请参考以下文章
您能否从 API 的用户名中获取 YouTube 频道 ID?
如何通过 YouTube Data API v3 从我自己的 YouTube 频道获取所有视频
youtube api v3 从比视频更新的频道中获取所有视频