发现这个问题时,我正在研究 API 的另一个问题,当我看到这个问题从未解决时,我决定调查一下。事实证明,这与另一个问题有关。
YouTube API v3 不支持已保存的播放列表。swaminarayanlive 频道没有创建播放列表,只是从 BhujMandir 频道保存了它们。
在您的情况下,解决方法是检索 BhujMandir 的播放列表并提取包含“Live”一词的“title”参数的响应片段。
您需要浏览页面并搜索每个页面,因为 API 响应一次可以显示多少个结果是有限制的。目前是50。
因此,您将使用以下内容获取 playlistItems 的第一页:
获取https://www.googleapis.com/youtube/v3/playlists?part=snippet&channelId=UCVItNtUctAknegvmYcMhUQg&maxResults=50&key= {YOUR_API_KEY}
这将返回一个 API 响应,其中包含属性“kind”(其值为“youtube#playlistListResponse”)和“etag”。如果结果超过 50 个,还会有一个“nextPageToken”属性。(在不是第一个页面上,还会有一个“prevPageToken”属性。)
在这些属性之后,有两个块。一个称为“pageInfo”,包含有关有多少结果(播放列表)以及每页显示多少的信息,一个称为“items”的块,包含生成的播放列表项。
您将在 items 块中查找任何具有包含子字符串“Live”的 title 属性(这是一个字符串)的 playlistItem 并获取它们的 id 属性。然后,您将通过在新的 HTTP 请求中使用 nextPageToken 的值来查看下一页,如下所示:
获取https://www.googleapis.com/youtube/v3/playlists?part=snippet&channelId=UCVItNtUctAknegvmYcMhUQg&maxResults=50&pageToken=[nextPageToken_value_here]&key= {YOUR_API_KEY}
到目前为止,您正在寻找的两个播放列表位于带有 CJYBEAA 和 CMgBEAA 令牌的页面上。