有没有办法获取youtube播放列表缩略图,例如如何获取视频的缩略图,请在此处说明:How do I get a YouTube video thumbnail from the YouTube API?
答案 0 :(得分:8)
借助YouTube API v3,您可以使用v3/playlists
端点获取播放列表缩略图,并向下钻取至items.snippet.thumbnails.high.url
对于以下播放列表:
https://www.youtube.com/playlist?list=PL50C17441DA8A565D
YouTube的API资源管理器有一个播放列表端点:
https://developers.google.com/youtube/v3/docs/playlists/list
这是API调用:
GET https://www.googleapis.com/youtube/v3/playlists?part=snippet&id=PL50C17441DA8A565D&key={YOUR_API_KEY}
以下是回复:
{
"kind": "youtube#playlistListResponse",
"items": [
{
"kind": "youtube#playlist",
"id": "PL50C17441DA8A565D",
"snippet": {
"title": "Jay Chou Playlist",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/kGbDymJ75PU/default.jpg",
"width": 120,
"height": 90
},
"medium": {
"url": "https://i.ytimg.com/vi/kGbDymJ75PU/mqdefault.jpg",
"width": 320,
"height": 180
},
"high": {
"url": "https://i.ytimg.com/vi/kGbDymJ75PU/hqdefault.jpg",
"width": 480,
"height": 360
}
},
"channelTitle": "it23"
}
}
]
}
答案 1 :(得分:5)
这对我有用。与关于播放列表项目的其他帖子类似,但我刚刚更改了API调用。希望它有所帮助。
//获取播放列表主题
$data = file_get_contents("https://www.googleapis.com/youtube/v3/playlistItems?key=< YOUR API KEY >&part=snippet&playlistId="<Put your playlist id here>");
//解码来自youtube的响应
$json = json_decode($data);
//如果要查看完整响应,请使用print_r($ json);
//响应中的每个项目都对应于播放列表中的视频,因此我们可以获取第一个视频(items [0])获取其片段和相应的缩略图,我们将获取默认大小的网址。如果您想要第二个视频使用项目[1]等
$video_thumbnail = $json->items[0]->snippet->thumbnails->default->url;
//将视频alt标记设置为摘录说明
$video_alt = $json->items[0]->snippet->description;
//将图片网址回显到图片标记
echo '<img src="'. $video_thumbnail .'" alt="'. $video_alt .'" />';
答案 2 :(得分:-1)
没有用于此目的的API。这是我能想到的解决方法。
1)youtube播放列表缩略图是什么?玩了我的帐户,似乎规则如下:
if playlist has 5+ videos
thumbnail = first 5 video images
else if playlist has 1+ videos
thumbnail = all video images
else shows this list is empty
2)然后您可以使用相同的方式获取视频缩略图。
3)在客户端(某些CSS)或服务器端
组合图像