2010-08-26 221 views
5

有什么想法?
我检查了不支持此功能的Youtube API。
可能吗?
如何通过用户名获取Youtube频道图片?

我需要通过用户名直接获取缩略图。
例如:

我得到了一个名为username:communitychannel
,我想下面的缩略图:
http://i2.ytimg.com/vi/YVrqydZz3e4/default.jpg


谢谢您的回复!
我知道我可以通过这样做检索缩略图数据。但情况是,我会先获得一个YouTube会员的订阅项目清单通过以下网址:

http://gdata.youtube.com/feeds/api/users/[USER_NAME]/subscriptions

从YouTube上的官方文件,它表明响应数据包括标签。但我从来没有看到它...

如果列表长度是100,那么我需要发送总共101请求来获取每个项目的缩略图数据。但它会消耗太多的网络带宽来做到这一点。

那么,是否有其他方式来完成要求?谢谢!! ;-)

回答

5

您可以通过使用URL这样得到用户的图像:

您可以通过附加查询字符串得到的只是用户名和图像缩略图描述在 partial responses api?田= YT:用户名,媒体:缩略图

  • 你可以得到JSON格式的响应由在JavaScript中很容易地使用附加& ALT = JSON-在脚本&格式= 5

  • 你也可以指定一个回调时的响应已经附加加载到执行:&回调= showImage

您的网址现在看起来是这样的:

http://gdata.youtube.com/feeds/api/users/communitychannel?fields=yt:username,media:thumbnail&alt=json-in-script&format=5&callback=showImage

要在页面中使用该把它放在一个脚本标签,像这样:

<script type='text/javascript' src="your_url"/> 

和回调应看起来像这样:

function showImage(data) 
{ 
    var name= data.entry.yt$username.$t; 
    var url = data.entry.media$thumbnail.url; 
    $(document).append("<img src='"+ url +"'/>"); 
} 

在加载数据之前,您必须确保已定义showImage回调函数。

我创建加载进料和用户图像的样本here确保您更改communitychannel到自己的用户名,否则将无法正常工作

我不能看到一个更好减少你的带宽比使用部分响应API的方式;

+0

任何方式来获取更大的图像版本? – 2014-05-22 16:15:38

相关问题