YouTube有this cool thing从一些起始关键字创建“智能播放列表”。我想以编程方式访问播放列表。我找到了YouTube data API,但它没有讨论“迪斯科”功能。
下面的答案之一建议使用
http://www.youtube.com/disco?action_search=1&query=XXXXXXXXX
将返回一些JSON,其中包含要播放的第一个视频和list
属性。不幸的是,list
是一个32个字符的十六进制字符串,而普通的播放列表ID是16个字符的十六进制字符串。这意味着用于检索完整播放列表的标准数据API不起作用。
有什么建议吗?
答案 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>