我一直试图通过以下方法查看视频的视图数量:
function search() {
var request = gapi.client.youtube.search.list({
part: 'snippet',
channelId: 'IRRELEVANT',
order: 'date',
maxResults: '25'
});
request.execute(function(response){
YoutubeResponse(response);
});
虽然文档告诉我每个视频都有一个statistics
部分,但snippet
__proto__
之后我认为这意味着某个地方出现了错误?或API改变了吗?基本上我需要那些最近25个视频的观看次数......
我尝试将part: 'snippet'
更改为part: 'statistics'
,但又找回code: -32602
...
感谢您的帮助,
干杯!
编辑:显然search.list
没有“统计信息”,而是我需要单独搜索每个视频...当使用谷歌“试一试”功能时(https://developers.google.com/youtube/v3/docs/videos/list#try-it )当你在底部的“字段”部分询问统计数据时,它没有做任何事情......所以我非常困惑,我怎么能得到视图计数&所有25个视频的长度(如果单独或全部一次 - 最好是 - )
答案 0 :(得分:30)
您提供的链接https://developers.google.com/youtube/v3/docs/videos/list#try-it对我有用。 获取持续时间和viewCount:填写部分内容:contentDetails,statistics和id:以逗号分隔的视频ID列表:TruIq5IxuiU,-VoFbH8jTzE,RPNDXrAvAMg,gmQmYc9-zcg
这将创建一个请求:
获取https://www.googleapis.com/youtube/v3/videos?part=contentDetails,statistics&id=TruIq5IxuiU,-VoFbH8jTzE,RPNDXrAvAMg,gmQmYc9-zcg&key= {YOUR_API_KEY}
答案 1 :(得分:0)
同意@Als提供的答案。
但是我发现了一个代码片段,对于某些人来说可能更方便:
function youtube_view_count_shortcode($params)
{
$videoID = $params['id']; // view id here
$json = file_get_contents("https://www.googleapis.com/youtube/v3/videos?
part=statistics&id=" . $videoID . "&key=xxxxxxxxxxxxxxxxxxxxxxxx");
$jsonData = json_decode($json);
$views = $jsonData->items[0]->statistics->viewCount;
return number_format($views);
}
将键值替换为youtube数据API的Google api键,将视频ID替换为youtube video id和Voila,您将获得youtube视频的观看总数。
来源: https://www.codementor.io/rajharajesuwari/how-to-get-youtube-views-count-aftojpxhj