如何从youtube API获取频道上所有视频的当前观看次数?

如何从youtube API获取频道上所有视频的当前观看次数?,youtube,youtube-api,youtube-data-api,Youtube,Youtube Api,Youtube Data Api,当订阅生效时 www.googleapis.com/youtube/v3/channels?part=statistics 似乎是即时更新,视图每天更新 我发现的一个解决方法是,用 www.googleapis.com/youtube/v3/playlistItems?part=contentDetails 然后迭代它们,调用 www.googleapis.com/youtube/v3/videos?part=statistics 每个人。这似乎得到了最准确的结果,尽管它需要每个上传视频超

当订阅生效时

www.googleapis.com/youtube/v3/channels?part=statistics
似乎是即时更新,视图每天更新

我发现的一个解决方法是,用

www.googleapis.com/youtube/v3/playlistItems?part=contentDetails
然后迭代它们,调用

www.googleapis.com/youtube/v3/videos?part=statistics
每个人。这似乎得到了最准确的结果,尽管它需要每个上传视频超过3学分,因此使用我的配额相对较快

有没有更快的方法解决这个问题?

我想在ESP8266上实现它,因此最好不需要太多的存储或处理能力。

您可以通过获取
liveStreamingDetails
对象包含有关实时视频广播的元数据来获取视图计数。仅当视频是即将进行的、实时的或已完成的实时广播时,对象才会出现在视频资源中。然后,在这下面,你会得到。它将显示当前观看广播的观众人数。如果广播有当前观众,且广播所有者未隐藏视频的viewcount,则属性及其值将显示

编辑

具体到您的用例,我相信两部分API将有助于您的查询

我想您可以调用
搜索
查询来检索该频道的所有视频。资源将具有
id.videoId
,作为调用的一部分连接。这将为您提供每个视频的
统计信息。viewCount
,您需要将其相加以获得总的频道观看次数

希望这有助于您的查询


快乐编码

您可以通过获取来获取视图计数,
liveStreamingDetails
对象包含有关实时视频广播的元数据。仅当视频是即将进行的、实时的或已完成的实时广播时,对象才会出现在视频资源中。然后,在这下面,你会得到。它将显示当前观看广播的观众人数。如果广播有当前观众,且广播所有者未隐藏视频的viewcount,则属性及其值将显示

编辑

具体到您的用例,我相信两部分API将有助于您的查询

我想您可以调用
搜索
查询来检索该频道的所有视频。资源将具有
id.videoId
,作为调用的一部分连接。这将为您提供每个视频的
统计信息。viewCount
,您需要将其相加以获得总的频道观看次数

希望这有助于您的查询


快乐编码

我不是问如何获得直播的观看次数,而是问如何获得所选频道上所有视频的当前总观看次数。更改标题以更好地反映它。请查看我的更新答案,希望它足够满足您的需要。“除了指定资源部分的成本外,调用此方法的配额成本为1个单位。”因此,总成本为3(从播放列表中列出视频)+3(从IDs中获取统计信息)要获得每50个视频,对吗?未来的所有通话都可以使用缓存的视频ID?对于
视频:list
通话,您只需花费3分,因为您只需要
统计信息
部分(
搜索
通话不表示是否有配额成本,我认为没有配额成本)。但是,未来的通话可能仍会产生配额成本。我不是问如何获取直播的观看次数,而是问如何获取所选频道上所有视频的当前总观看次数。更改标题以更好地反映它。请查看我的最新答案,希望它足以满足您的需要。”除了指定资源部分的成本外,调用此方法的配额成本为1个单位。”因此,总成本为3(从播放列表中列出视频)+3(从IDs中获取统计信息)要获得每50个视频,对吗?未来的所有通话都可以使用缓存的视频ID?对于
视频:list
通话,您只需花费3分,因为您只需要
统计信息
部分(
搜索
通话不表示是否有配额成本,我认为没有配额成本)。不过,未来的通话可能仍会产生配额成本。