如何使用新的 YouTube Data API (V3) 获取某个频道的上传视频列表?

Posted

技术标签:

【中文标题】如何使用新的 YouTube Data API (V3) 获取某个频道的上传视频列表?【英文标题】:How do I get a list of uploaded videos for a certain channel with the new YouTube Data API (V3)? 【发布时间】:2012-11-10 09:23:13 【问题描述】:

我正在尝试获取所有上传到频道的视频的视频 ID 列表。我还想使用新版本的 YouTube 数据 API (V3)。我该怎么做?

【问题讨论】:

【参考方案1】:

与此同时,还有一个更简单的方法:

使用 channels.list 设置用户名 = [CHANNELNAME] 设置部分 = contentDetails

grab $data->items[0]->contentDetails->relatedPlaylists->uploads --> [PLAYLISTID]

使用 playlistItems.list 从第 1 步设置 playlistId = [PLAYLISTID] 遍历每个 PlaylistItem 并提取视频 ID

【讨论】:

与上述相同的评论...您无法获取 MP4 URL。您应该使用 iframe embed 或 android Player API:developers.google.com/youtube/iframe_api_reference 这是唯一的解决方案! 获取结果:items": [],但是网上确实有很多视频 当频道名称有多个单词(以空格分隔)时,此方法不起作用。【参考方案2】:

您必须获取上传播放列表 ID 才能上传每个视频。为此,您需要获取频道 ID。从频道 ID 获得播放列表 ID 后,这非常简单。我已经写出了下面所有三个的步骤。

此外,我们还提供PubSubHubBub,让您可以在每次向频道添加新视频时收到提醒,或者您可以在拨打电话之前使用SUP (V2) 查看哪些资源发生了变化。

获取 V3 中频道的所有上传视频的视频 ID 的说明

    获取你想要的频道的频道ID(你可能只需要这样做一次,然后你可以保存它)

    使用search.list 将 type 设置为 channelq 设置为您想要的频道名称 获取频道 ID(类似于:“channelId”:“UC0X2VuXXXXXXXXXXXXXXXX”)

    使用第 1 步中的频道 ID 获取频道上传的播放列表 ID(您可能只需要执行一次,然后可以保存)

    使用channels.list 在步骤 1 中将 id 设置为 UC0X2VuXXXXXXXXXXXXXXXX 从 contentDetails 中获取 uploads 键(类似于:“uploads”:“UU0XXXXXXXXXXXXXXXXXXXXX”)

    使用步骤 2 中的播放列表 ID 通过播放列表中的播放列表项获取视频

    使用playlistItems.list 在步骤 2 中将 playlistId 设置为 UU0XXXXXXXXXXXXXXXXXXXX 遍历每个 PlaylistItem 并提取视频 ID

【讨论】:

我发现这个 API 非常健谈,您必须至少进行三个查询才能获得有意义的内容。 您无法获取 MP4 网址。您应该使用 iframe embed 或 Android Player API:developers.google.com/youtube/iframe_api_reference 有人可以分享这方面的代码吗,我对此很陌生,我不知道如何开始。 嗯,这是我可以使用的答案!非常感谢你,糟糕的是我不能给超过一个赞!爱如此 它还会获取privacyStatus为“私人或隐藏”的视频吗?

以上是关于如何使用新的 YouTube Data API (V3) 获取某个频道的上传视频列表?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 YouTube Data API v3 更改页面结果

YouTube Data API - 如何通过 API 获取“已保存的播放列表”

如何通过 YouTube Data API v3 从我自己的 YouTube 频道获取所有视频

如何使用来自 YouTube Data API V3 的 enpoint 搜索通过 channelId 获取频道图标

使用 YouTube Data API v3 确定 YouTube 频道的上传速率

如何从 Youtube Data API v3 获取最大搜索结果?