Google Youtube API搜索未检索频道中的所有视频

Dev*_*moz 2 youtube-api

我必须使用Youtube API检索频道中的所有视频。所有视频都发布在Youtube上,我可以正确看到它们。

我试图直接从此页面发出请求:https : //developers.google.com/youtube/v3/docs/search/list ,这是示例请求:GET http s://www.googleapis.com/youtube / v3 / search?part = snippet&channelId = myChannelID&maxResults = 50&key = {YOUR_API_KEY}

Request不会检索所有视频,它总共返回9个视频,总共只返回7个。所有视频都具有相同的配置。丢失的视频总是一样的。

如果我使用视频API传递了搜索响应中排除的那些视频之一的ID,它会返回正确的响应,并且正确属于我的频道:https : //developers.google.com/youtube/v3/docs/videos / list#try-it

有人可以帮我吗?

先感谢您

弗朗切斯科

mmi*_*rus 7

回答“如何使用YouTube数据API v3获取频道中所有视频的列表?” 可能是您所需要的。尤其要看答案中链接的视频。

总而言之,要从频道获取所有上传内容,您需要使用该播放列表ID上的playlistItems.list从该频道的上传播放列表中获取项目,而不是在频道ID上调用search.list。

尝试以下两步方法:

  1. 使用channels.list API调用获取频道的上传播放列表的ID: GET https://www.googleapis.com/youtube/v3/channels?part=contentDetails&id={YOUR_CHANNEL_ID}&key={YOUR_API_KEY}
  2. 使用playlistItems.list调用从上传的播放列表中获取视频: GET https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&maxResults=3&playlistId={YOUR_PLAYLIST_ID}&key={YOUR_API_KEY}

  • 这也解决了我在搜索频道 ID 的视频和日期订单时的问题。这给出了不可靠的结果(随机丢失最新视频)。每次调用获取频道列表和播放列表项的配额成本仅为 1。当每日配额减少到 10,000 时,这一点很重要 (2认同)