7

我正在尝试按上传顺序获取上传到多个 YouTube 频道的最新视频的列表。有点像 YouTube 上的订阅框如何显示多人(您订阅的)最近上传的所有视频。

GET https://www.googleapis.com/youtube/v3/search?
part=snippet&channelId=UC4XmzE3vYbp7h4B8dxcoN_A&maxResults=20&order=date
&key={YOUR_API_KEY}

该搜索将返回从单个频道上传的最新视频列表。但是,我试图在同一个列表中显示一组人。

GET https://www.googleapis.com/youtube/v3/search?
part=snippet
&channelId={UCXA7dMwWUS8n00Xq-Qvj38A,UC4XmzE3vYbp7h4B8dxcoN_A}
&maxResults=20&order=date&key={YOUR_API_KEY}

我尝试channelId在第一个 YouTube 上添加一个额外的 YouTube(用逗号分隔),这似乎破坏了搜索并显示“随机”视频(没有channelId列出)。

如果有人知道如何通过一个 API 查询来完成此操作,我会非常高兴。


更清楚地说,正如我在下面的评论中提到的,这就是我想要做的:

我不是想获得特定用户的“订阅”,而是尝试将多个频道最近上传的(视频)合并到一个列表中。这样我就可以在我的网站上按上传的顺序按时间顺序显示我的“团队”视频。

4

3 回答 3

2

您可以通过 home=true 使用活动-> 列表调用。

获取https://www.googleapis.com/youtube/v3/activities?part=snippet&home=true&key= {YOUR_API_KEY}

然后您可以仅过滤type =upload 响应。

更多信息在这里。

但是,如果您正在寻找特定频道,则没有多频道搜索,您可以从每个频道获取上传播放列表并自行合并。

对于每个,使用 channelId 执行频道-> 列表请求以获取 uploadsPlaylist,然后使用该 playlistId 执行 playlistItems->list 以获取项目,一旦该视频的发布时间超出您的边界,您就可以停止将项目添加到您自己的列表中。

于 2013-10-01T19:25:48.783 回答
0

根据API 参考,listing 目前只支持一个通道的请求,例如如下:

https://www.googleapis.com/youtube/v3/search?part=snippet&channelId={CHANNEL_ID}&order=date&key={YOUR_API_KEY}

目前没有多频道搜索功能(请参阅上面的参考资料),但由于返回格式定义明确,您可以简单地进行多次调用,为每个所需频道调用一次,然后合并结果,按日期排序。

于 2014-02-22T19:54:26.917 回答
0

您必须为每个频道发送请求,没有多频道搜索 API。

不确定谷歌是否打算实施一个,但希望他们这样做。

于 2014-02-17T05:21:42.730 回答