从youtube视频获取播放列表ID

问题描述 投票:0回答:3

有没有办法使用 API 查找 YouTube 视频的播放列表 ID,例如通过 videoID?我查看了

/playlistItems
端点,但我不确定在哪里可以找到播放列表项目 ID?我试图到处查看这个,但我迷失了。

api youtube youtube-data-api playlist
3个回答
1
投票

我查了一下,我能找到的唯一方法仅限于您自己的播放列表和视频频道(或您指定的其他频道)上的播放列表:

  1. 获取视频ID
  2. 如果您想检查同一频道上的播放列表,请从视频中获取频道 ID(请参阅 https://developers.google.com/youtube/v3/docs/videos#resource
  3. 获取您要检查的播放列表 (https://developers.google.com/youtube/v3/docs/playlists/list) - 您自己的播放列表或
  4. 上的播放列表
  5. 循环并获取每个播放列表上的项目(https://developers.google.com/youtube/v3/docs/playlistItems/list如您所发现)
  6. 查找与您正在检查的视频 ID 相同的播放列表项 (https://developers.google.com/youtube/v3/docs/playlistItems#resource)

这有点丑陋,当然也有局限性 - 也许其他人会与我们分享更好的方法。


1
投票

替代方案可能是:

  1. 既然您有
    video_id
    ,请同时获取 视频标题
  2. 根据视频标题,使用 search:list 端点搜索与查询/条件(即视频标题)匹配的播放列表。
  3. 循环搜索请求的结果,并使用我在我的答案中显示的代码来检查
    video_id
    是否在播放列表中。

示例:

video_id

eJjbnFZ6yA8

标题

FULL MATCH - The Rock vs. Mankind – WWE Championship Match: Raw, Jan. 4, 1999

进行搜索以获取与搜索词匹配的播放列表:“

FULL MATCH - The Rock vs. Mankind – WWE Championship Match: Raw, Jan. 4, 1999

网址:

https://youtube.googleapis.com/youtube/v3/search?part=id%2Csnippet&maxResults=50&q=FULL%20MATCH%20-%20The%20Rock%20vs.%20Mankind%20%E2%80%93%20WWE%20Championship%20Match%3A%20Raw%2C%20Jan.%204%2C%201999&type=playlist&key=[YOUR_API_KEY]

在这里尝试一下

从搜索结果中获取播放列表 - 在本例中,我获取了从搜索中获得的第一个结果,然后,我检查 video_id

eJjbnFZ6yA8
是否在播放列表中
PLAamU2iv-fSuxZrVqQIBcrrZMTCMbBt2W

网址:

https://youtube.googleapis.com/youtube/v3/playlistItems?part=id%2Csnippet&playlistId=PLAamU2iv-fSuxZrVqQIBcrrZMTCMbBt2W&videoId=eJjbnFZ6yA8&key=[YOUR_API_KEY]

在这里尝试一下以检查结果。

请记住,

search:list
端点消耗 100 个配额点,因此,配额可能会很快耗尽——具体取决于搜索的强度。


0
投票

这不是一个完美的浏览器解决方案,而是一种解决方法。在您的浏览器中:

  1. 运行 https://www.youtube.com/watch?v=[videoID]
  2. 在视频下点击
    ...more
  3. 找到并单击
    Featured playlist
    标题(如果有)
  4. 从 URL
    list
    参数获取 playlistid:https://www.youtube.com/playlist?list=[playlistid]
© www.soinside.com 2019 - 2024. All rights reserved.