从网址获取YouTube频道的头像/缩略图

时间:2015-01-16 05:12:55

标签: php dom youtube youtube-api

我搜索并尝试了一些像DOM和一些API方法的东西。我找不到任何与PHP有关的API的明确文档。到目前为止我从未使用过DOM,所以我对它没有经验。

基本上,我需要一种方法来获取YouTube频道的头像并使用来自频道网址的PHP显示它。

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

使用cURL或替代方法获取用户的YouTube页面的来源,然后使用此代码获取他们的头像。

echo GetBetween($YouTubePage,'<img class="appbar-nav-avatar" src="','" title="');


function GetBetween($content,$start,$end){
$r = explode($start, $content);
if (isset($r[1])){
$r = explode($end, $r[1]);
return $r[0];
}
return '';
}

答案 1 :(得分:0)

您可以使用file_get_contents或cUrl。

您的网址看起来像http://gdata.youtube.com/feeds/api/users/PUTCHANNELID?fields=yt:username,media:thumbnail,title&alt=json

如果您更喜欢使用XML,则可以删除最后一个参数alt = json 以下是回复示例:

    {
     version: "1.0",
     encoding: "UTF-8",
     entry: {
             xmlns: "http://www.w3.org/2005/Atom",
             xmlns$media: "http://search.yahoo.com/mrss/",
             xmlns$yt: "http://gdata.youtube.com/schemas/2007",
     title: {
             $t: "CSS Masters Israel",
             type: "text"
            },
     media$thumbnail: {
         url:"http://yt3.ggpht.com/qC5rLzDDlKA/AAAAAAAAAAI/AAAAAAAAAAA/ijaVa2hQjso/s88-c-k-no/photo.jpg"
     },
    yt$username: {
        $t: "TJv3MtKko-T3gDGn5XFyPA"
    }}}

所以你只需要获得media$thumbnail[url]并在

中使用它
echo '<img src="'.media$thumbnail[url].'"/>

此外,您应该从响应中获取标题,并将其用作图像的alt和title属性。