从用户的播放列表-YouTube API获取视频

时间:2011-01-05 18:34:58

标签: youtube-api

有没有办法从特定用户的播放列表中获取视频列表?我尝试了以下调用,但它似乎没有给我一个播放列表中的视频列表

饲料://gdata.youtube.com/feeds/users/USERNAME/playlists/PLAYLIST_ID

提前致谢,

斯科特

2 个答案:

答案 0 :(得分:19)

http://gdata.youtube.com/feeds/api/playlists/PLAYLIST_ID

<强>更新

只是添加到这个答案 上面的网址...但是正如下面提到的@crunkchitis一样。

  

这对我不起作用,因为我使用了错误的播放列表ID。   我的播放列表看起来像“PL123456789”但确保只是放弃了   “PL”并使用“123456789”作为播放列表ID !! - @crunkchitis

如果您需要一种方法来提取此信息...使用PHP ...

<?php $cont = json_decode(file_get_contents('http://gdata.youtube.com/feeds/api/playlists/[PLAYLIST_ID]/?v=2&alt=json&feature=plcp')); ?>
<?php $feed = $cont->feed->entry; ?>
<?php if(count($feed)): foreach($feed as $item): // youtube start ?>
   <?php echo $item->title->{'$t'}  ?> <br />
   <?php echo $item->{'media$group'}->{'media$description'}->{'$t'}  ?>
<?php endforeach; endif; // youtube end ?>

用户print_r($item)您是否需要其他信息,例如缩略图网址,ID等...

希望有所帮助

答案 1 :(得分:1)

我自己实际上正在努力解决这个问题。我找到了。但它不容易到达。我正在使用json。因此,如果您使用的是xml,则需要在网址末尾添加“&amp; alt = json”。

我在条目数组下找到了。在媒体$ group-&gt; media $ content-&gt; media $ thumbnail中,他们有一个视频缩略图列表。其中每个都包含其路径中的视频ID。不是最好的解决方案,但它应该工作得很好。

"media$group": {
        "media$content": [
            {
                "url": "http://www.youtube.com/p/PLE7C605988F1AFDAA",
                "type": "application/x-shockwave-flash",
                "yt$format": 5
            }
        ],
        "media$thumbnail": [
            {
                "url": "https://i.ytimg.com/vi/[VIDEO_ID]/default.jpg",
                "height": 90,
                "width": 120,
                "yt$name": "default"
            },
            {
                "url": "https://i.ytimg.com/vi/[VIDEO_ID]/mqdefault.jpg",
                "height": 180,
                "width": 320,
                "yt$name": "mqdefault"
            },
            {
                "url": "https://i.ytimg.com/vi/[VIDEO_ID]/hqdefault.jpg",
                "height": 360,
                "width": 480,
                "yt$name": "hqdefault"
            }
        ],
        "media$title": {
            "$t": "[VIDEO_NAME]",
            "type": "plain"
        }
    },
相关问题