检索YouTube Disco播放列表

时间:2011-10-19 10:05:14

标签: youtube api

YouTube有this cool thing从一些起始关键字创建“智能播放列表”。我想以编程方式访问播放列表。我找到了YouTube data API,但它没有讨论“迪斯科”功能。

下面的答案之一建议使用

http://www.youtube.com/disco?action_search=1&query=XXXXXXXXX

将返回一些JSON,其中包含要播放的第一个视频和list属性。不幸的是,list是一个32个字符的十六进制字符串,而普通的播放列表ID是16个字符的十六进制字符串。这意味着用于检索完整播放列表的标准数据API不起作用。

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

首先,我必须说我从未使用过youtube数据API,因此我不知道下面的信息会有多大用处。

让我举个例子:

我想创建Smashing Pumpkins。我输入了艺术家姓名并点击了“Disco!”按钮。使用Fiddler2我发现请求的网址是:

www.youtube.com/disco?action_search=1&query=smashing%20pumpkins

请注意,空格将替换为%20。作为回应,我得到了简单的JSON响应:

{"url": "\/watch?v=bhMz7x1ZaGM\u0026feature=disco\u0026playnext=1\u0026list=MLGxdCwVVULXe5-F4X_zm6wnblRsnXoPJS"}

它是新生成的Smashing Pumpkins播放列表的第一首歌曲的链接,地址为list=MLGxdCwVVULXe5-F4X_zm6wnblRsnXoPJS。您只需要将\u0026替换为&即可获得有效的链接。

我认为您想要做的其他魔术可以通过官方的YouTube数据API获得。 我希望我的研究能为你提供帮助。

修改

嗯,看起来这个由youtube / disco生成的播放列表与用户可以生成的播放列表不同,并且可以通过API获得。列表ID比usuall长,当您点击“有关播放列表的更多信息”时,您将被重定向到艺术家个人资料。基于这两个事实,我想通过API检索生成的列表是不可能的。遗憾。

答案 1 :(得分:0)

@Randomblue,您想要如何检索此播放列表? 您可以在此网址中使用32字符十六进制来获取详细说明播放列表的页面

https://www.youtube.com/playlist?list={HEX}

或嵌入播放列表iframe,如下所示:

<iframe width="853" height="480" src="//www.youtube.com/embed/videoseries?list={HEX}" frameborder="0" allowfullscreen></iframe>