如何获取整个YouTube视频说明,php,gdata

时间:2013-04-22 21:29:52

标签: php youtube-api

我的php代码可以使用YouTube API正确检索标题,视频网址,观看次数,视频日期,上次评论日期以及说明的前160个字符。我似乎无法弄清楚如何获得整个描述。我知道它在xml中检索到了,因为我已经抛弃了它。那我怎么才能得到160个字符呢?

整个描述被截断为157个字符,并且添加了“...”,所以当我回显它或var_dump它时,它是160个字符。这是我完整的测试代码(没有标题,视频网址等)。

<?php 
    $feedURL = 'http://gdata.youtube.com/feeds/api/videos?q=phone&v=2&fields=entry[yt:statistics/@viewCount > 10000]&start-index=1&max-results=1';
    $sxml = simplexml_load_file($feedURL);
    foreach ($sxml->entry as $entry) {
        $media = $entry->children('http://search.yahoo.com/mrss/');
        echo $media->group->description;
    }
?>

这是页面上显示的内容:

免费TuTiTu游戏:http://www.tutitu.tv/index.php/games免费TuTiTu的着色页面:http://www.tutitu.tv/index.php/coloring加入我们的Facebook:https ...

当我以这种方式获得xml时:

gdata.youtube.com/feeds/api/videos/JI-5kh_4gO0?v=2&alt=json-in-script&callback=youtubeFeedCallback&prettyprint=true

整个说明如下:

"media$description": {
"$t": "FREE TuTiTu's Games: http://www.tutitu.tv/index.php/games\nFREE TuTiTu's Coloring pages at: http://www.tutitu.tv/index.php/coloring\nJoin us on Facebook: https://www.facebook.com/TuTiTuTV\nTuTiTu's T-Shirts: http://www.zazzle.com/TuTiTu?rf=238778092083495163\n\nTuTiTu - The toys come to life\n\nTuTiTu - \"The toys come to life\" is a 3D animated television show targeting 2-3 year olds. Through colorful shapes TuTiTu will stimulate the children's imagination and creativity. On each episode TuTiTu's shapes will transform into a new and exciting toy.",
"type": "plain"
},

我确定我遗漏了一些基本的东西,但是当我寻找解决方案时,我还没有找到它。

感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

这两种不同类型的API请求将返回不同的描述大小。 我认为这是一种限制总响应大小的方法。

1)按照http://gdata.youtube.com/feeds/api/videos?q=phone&v=2&fields=entry&alt=json&prettyprint=true进行搜索,将返回短视频说明 2)按照以下方式执行视频请求:http://gdata.youtube.com/feeds/api/videos/JI-5kh_4gO0?v=2&alt=json&prettyprint=true将返回长视频说明。

BTW:api版本3允许您在1个请求中请求视频ID的列表(以获取他们的详细说明)。

答案 1 :(得分:1)

$media->group->{'media$description'}应该做的伎俩