回答
为了得到描述元素,你需要访问的的GDATA版本视频的信息,并且您可以在路径上使用alt = json返回json。在这种情况下,oHg5SJYRHA0是在YouTube上使用的视频的网址结尾处找到的视频ID,例如, www.youtube.com/watch?v=oHg5SJYRHA0
http://gdata.youtube.com/feeds/api/videos/oHg5SJYRHA0?v=2&alt=json&prettyprint=true
(该prettyprint被格式化,以使该易于阅读,你不需要它,你在做什么)
你可以抓住的JSON,将其添加到可变的,并且使用访问它的jQuery:
:var youTubeURL = 'http://gdata.youtube.com/feeds/api/videos/oHg5SJYRHA0?v=2&alt=json';
var json = (function() {
var json = null;
$.ajax({
'async': false,
'global': false,
'url': youTubeURL,
'dataType': "json",
'success': function(data) {
json = data;
}
});
return json;
})();
然后,使用对象表示法访问它
标题和说明属性是否已弃用?我为标题和说明获取“https://youtube.com/devicesupport”值。 – 2015-05-12 13:31:36
@SheebanSingaram yikes。是的,它看起来像,我在YouTube API V2.0页面上看到了弃用警告:https://developers.google.com/youtube/2.0/developers_guide_protocol。我会看看这个并更新我的答案。 – 2015-05-12 21:37:38
pLease切换到API V3.0 – 2015-05-20 09:32:11
我会通过考虑看看YouTube数据API来获取你想要的开始:http://code.google.com/apis/youtube/getting_started.html#data_api
我有点迟疑地阅读了这个话题。 我做了这样的事情使用JSON和YT API的
$json = json_decode(file_get_contents("http://gdata.youtube.com/feeds/api/videos/".$rs['vid']."?v=2&prettyprint=true&alt=jsonc"));
注:$ RS [ 'VID']从我的数据库dinamically retrived视频ID。
一旦你把内容在手柄$ JSON,你可以retrive这样的:
$json->data->description;
$json->data->title;
用var_dump($ JSON),查看您可以访问所有的值。
Youtube API V2.0已被弃用。它显示标题“youtube.com/devicesupport”的某些错误值。 pLease打开到API V3.0
你可以引用下面的PHP代码并根据你的需要修改你的js或jquery。
function youtube_title($id) {
$id = 'YOUTUBE_ID';
// returns a single line of JSON that contains the video title. Not a giant request.
$videoTitle = file_get_contents("https://www.googleapis.com/youtube/v3/videos?id=".$id."&key=YOUR_API_KEY&fields=items(id,snippet(title),statistics)&part=snippet,statistics");
// despite @ suppress, it will be false if it fails
if ($videoTitle) {
$json = json_decode($videoTitle, true);
return $json['items'][0]['snippet']['title'];
} else {
return false;
}
}
更新:
jQuery代码,以获得标题 -
$.getJSON('https://www.googleapis.com/youtube/v3/videos?id={VIDEOID}&key={YOUR API KEY}&part=snippet&callback=?',function(data){
if (typeof(data.items[0]) != "undefined") {
console.log('video exists ' + data.items[0].snippet.title);
} else {
console.log('video not exists');
}
});
如果你没有一个API密钥,只想要标题,该怎么办? – SomeRandomName 2015-05-20 14:39:51
在v2.0中是可能的,在v3.0中你只需要api密钥..并且获得api密钥并不困难...... – 2015-05-21 10:49:22
我得到了一个解决方案,我们可以得到没有API密钥的标题...通过使用下面的链接http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=videoid&format=json ...但事情是videoid应该是已知的。 – 2015-05-22 05:39:35
的GData已被弃用,但仍然可以通过调用该端点获得视频说明:
https://www.googleapis.com/youtube/v3/videos?part=snippet&id=[video_id]&key=[api_key]
它将返回形式的响应:
{
"kind": "youtube#videoListResponse",
"etag": "\"...\"",
"pageInfo": {
"totalResults": 1,
"resultsPerPage": 1
},
"items": [
{
"kind": "youtube#video",
"etag": "\"...\"",
"id": "...",
"snippet": {
"publishedAt": "...",
"channelId": "...",
"title": "...",
"description": "...",
"thumbnails": { ... },
"channelTitle": "...",
"tags": [ ... ],
"categoryId": "...",
"liveBroadcastContent": "...",
"localized": {
"title": "...",
"description": "..."
},
"defaultAudioLanguage": "..."
}
}
]
}
描述可以发现在items.localized.description
。
- 1. 获取嵌入YouTube视频
- 2. 格式化嵌入的YouTube视频说明
- 3. 获取YouTube视频标签嵌入视频
- 4. 获取适用于iOS的YouTube视频说明(YouTube API)
- 5. 从页面上的嵌入式YouTube视频获取youtube链接?
- 6. 嵌入youtube视频问题
- 7. youtube-api 3.0更新视频说明和/或标题
- 8. html5(youtube)视频标签说明
- 9. 嵌入式视频youtube
- 10. 在Tumblr中嵌入视频时自动获取YouTube视频标题
- 11. 嵌入式视频/ youtube视频不停
- 12. 获取YouTube视频的标题
- 13. 获取youtube视频的标题
- 14. “嵌入式”YouTube视频无法嵌入
- 15. 嵌入YouTube和Vimeo视频
- 16. 如何在YouTube视频嵌入形式获得从Youtube缩略图嵌入形式的Youtube视频
- 17. jQuery获取YouTube视频标题
- 18. 从YouTube视频获取标题
- 19. 嵌入YouTube视频
- 20. 嵌入youtube视频
- 21. 嵌入YouTube视频?
- 22. Youtube嵌入式视频与重叠标题
- 23. Youtube标题应显示在嵌入式视频
- 24. 嵌入YouTube视频的问题
- 25. 如何获取Vine视频标题/说明?
- 26. 获取视频ID的Youtube视频标题在PHP第一
- 27. 保存多个YouTube视频的说明
- 28. 在colorbox上的Youtube视频说明
- 29. 从嵌入式YouTube视频获取当前时间戳
- 30. 更改嵌入式YouTube视频的CSS
我在这里创建了一个函数来解决这个问题:http://stackoverflow.com/a/13786724/1078904 – 2012-12-09 12:19:15