如何使用 YouTube API v3 检索多个用户最近的视频



第一次深入v3YouTube API并有点困难。我有一组通道ID:

$channel_ids = [
'UC6nSFpj9HTCZ5t-N3Ra3-HB',
'UC6nSFpjSEBUCZ5t-N3Ra3-HB',
'UC6nrst90rsd3Z5t-N3Ra3-HC',
'UC6nSFpjd329th0rt-tuTH3-HA',
etc...
]

我想用尽可能少的http请求检索这些频道在过去三天发布的视频。

我需要返回的数据是:

  • 频道标题(channelTitle)
  • 视频id(videoID)
  • 视频标题(title)
  • 视频时代(publishedAt)
  • 视频长度(?)
  • 视频视图(?)
  • 任何频道标志都很好,但我可以没有

我不知道如何让/search返回视频长度或视图。/search似乎一次只能做一个频道ID。/videos不起作用,因为它需要视频id,而不是频道id。playlistItems可能起作用,但需要我查找频道的videos播放列表并存储它,这=一个额外的呼叫*频道数量。也许谷歌希望你这么做?这就是我在这里问的原因。

一些通用指南是我所寻找的,而不是寻找任何人为我编写代码。

FWIW,我在用PHP工作。

  1. 对于每个频道,您需要在3天前使用publishedAfter参数调用Search:list。存储结果中的视频ID。

  2. 现在批量调用Videos:list,id参数一次最多包含50个videoID,part参数包含snippet、contentDetails和统计信息。这将为您提供所需的数据结果。

您也可以使用类似Video Blogster的插件来实现自动化。