我正在通过以下方式检索给定频道的所有视频:
当我转到某个频道时,例如:http://www.youtube.com/channel/UCXIyz409s7bNWVcM-vjfdVA我有频道ID,我可以清楚地看到视频。此外,如果我点击“视频”标签,我可以看到所有视频,但网址更改为:http://www.youtube.com/user/majesticcasual/videos
我想获取频道ID并检索指定频道的用户名,以便我可以按频道ID查询YouTube的API视频。这可能吗?
答案 0 :(得分:2)
如果您检索此Feed:
https://gdata.youtube.com/feeds/api/users/[channel_id]/
您将收到包含<author>
元素的回复 - 该<name>
元素的<author>
子元素是用户名。它也在与<yt:username>
相同的Feed中重复。
当然,这有点没有实际意义,因为你可以直接通过channelID查询:
https://gdata.youtube.com/feeds/api/users/[channel_id]/uploads
与您使用用户名时的Feed相同。这是有效的,因为channel_id实际上只是某人用户名的唯一ID。
如果您想使用API的v3(现在非常鼓励,因为它现在处于生产级别),您可以使用此Feed:
GET https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=UUXIyz409s7bNWVcM-vjfdVA&key={YOUR_API_KEY}
请注意,我已经更改了频道ID,所以不是从UC开始(就像所有频道ID一样),我传递了一个以UU开头的值......这样你就可以获得上传的Feed了频道(您也可以从LL开始,而不是取回'喜欢'的Feed,例如......甚至可以请求:
GET https://www.googleapis.com/youtube/v3/channels?part=snippet%2CcontentDetails&id=UCXIyz409s7bNWVcM-vjfdVA&key={YOUR_API_KEY}
在contentDetails参数中检索与该特定频道关联的所有播放列表。