从播放列表ID中检索视频ID - youtube api v3

时间:2014-11-08 14:05:39

标签: php youtube youtube-api

我目前正在使用youtube api v3。我正在尝试从特定播放列表中检索video ids。我搜索了文档,但找不到引用该类似内容的示例。我正在使用GITHUB的这个回购。如何从给定的video ids中检索playlist id

这是一个片段,但它只会产生播放列表的一般信息:

require 'vendor/autoload.php';

use Madcoda\Youtube;

$youtube = new Youtube(array('key' => '<API KEY>'));

// Return a std PHP object
$playlist = $youtube->getPlaylistById('PL590L5WQmH8fJ54F369BLDSqIwcs-TCfs');

echo "<pre>";
print_r($playlist);
echo "</pre>"

1 个答案:

答案 0 :(得分:3)

是的,你可以!

YouTube API v3包含资源playlistItems.list

使用此参数获取播放列表的视频ID:

part: 'contentDetails'
playlistId: 'PL590L5WQmH8fJ54F369BLDSqIwcs-TCfs'

https://www.googleapis.com/youtube/v3/playlistItems?part=contentDetails&playlistId=PL590L5WQmH8fJ54F369BLDSqIwcs-TCfs&key= {YOUR_API_KEY}

输出:

 "items": [
  {

   "kind": "youtube#playlistItem",
   "etag": "\"PSjn-HSKiX6orvNhGZvglLI2lvk/OCpNe6AE7ww8_WCYOw2M6axwxAY\"",
   "id": "PLDWb5NF1kx1qB7HgQ2tJKvLCsn0D34rFYWn3o4SsrJrU",
   "contentDetails": {
    "videoId": "Lv-sY_z8MNs"
   }
  },
  {

   "kind": "youtube#playlistItem",
   "etag": "\"PSjn-HSKiX6orvNhGZvglLI2lvk/Qvv0GzRVKvhc4LANFBV171hvlJI\"",
   "id": "PLDWb5NF1kx1qB7HgQ2tJKvAZrOtpGhFVaTYQJQCi66rE",
   "contentDetails": {
    "videoId": "xY_MUB8adEQ"
   }
  },
  {

   "kind": "youtube#playlistItem",
   "etag": "\"PSjn-HSKiX6orvNhGZvglLI2lvk/rRRgwge6ptZxyMRs-RzsvEFU6qs\"",
   "id": "PLDWb5NF1kx1qB7HgQ2tJKvAI1eXgw8QWwXeA8Anwu4VY",
   "contentDetails": {
    "videoId": "xcc9S_ik0v8"
   }
  }
...

然后您拥有播放列表的视频ID

我快速查看你在帖子中链接到的github,你会有这样的事情: (/!\我还没有测试过这段代码/!)

use Madcoda\Youtube;

$youtube = new Youtube(array('key' => '/* Your API key here */'));

// Set Default Parameters
$params = array(
    'part'          => 'contentDetails',
);

$playlistItems = $youtube->getPlaylistItemsByPlaylistId('PL590L5WQmH8fJ54F369BLDSqIwcs-TCfs');

print_r($playlistItems);