【问题标题】:How to get YouTube video view count between two specific dates?如何获取两个特定日期之间的 YouTube 视频观看次数?
【发布时间】:2017-02-06 02:06:48
【问题描述】:

我想显示来自我的网站的前 100 个 YouTube 视频,orderby 观看次数,但条件是我想显示基于每周的视频方式。

例如:sep-26 to oct-2 是一周,我想在sep-26 to oct-2 周显示按观看次数排名前 100 的视频顺序,这意味着首先显示一周内观看次数最高的视频。

那么,YouTube 是否有任何 API 可以提供特定视频的每周观看次数或特定日期之间的观看次数?

以下代码用于通过id获取viewcount的特定视频

 <?php
                $video_ID = '7lCDEYXw3mM';
                $JSON = file_get_contents("https://www.googleapis.com/youtube/v3/videos?id={$video_ID}&key=YOUR_API_KEY&part=statistics");
                $JSON_Data = json_decode($JSON);
                $statatistic = $JSON_Data->items[0]->statistics;
                $views = $statatistic->viewCount;
                echo $views;
            ?>

是否有任何代码可以让我在特定日期之间获得查看次数?请帮助我找到解决方案。

【问题讨论】:

    标签: php video youtube youtube-api youtube-data-api


    【解决方案1】:

    YouTube API 不提供该数据,但如何:

    1. 每天请求前 100 个视频并将 ID、日期和观看次数存储在本地。
    2. 一周后,您可以将今天的观看次数与一周前的观看次数进行比较。
    3. 删除任何超过 1 周的本地数据。

    缺点:今天的前 100 个视频将(略有?)与一周前的前 100 个视频不同。

    【讨论】:

      【解决方案2】:

      您需要首先从频道中获取视频列表,然后按照answer in SO post 中的说明获取每个项目的contentDetails

      示例请求:

      GET https://www.googleapis.com/youtube/v3/videos?part=contentDetails,statistics&id=TruIq5IxuiU,-VoFbH8jTzE,RPNDXrAvAMg,gmQmYc9-zcg&key={YOUR_API_KEY}
      

      您也可以查看这个相关的 SO 问题:youtube api v3 - get videos from a playlist with view count data ordered by number of views

      playlistItems.list 调用的结果中,收集视频id,制作一个逗号分隔的列表,并将其设置为videos.list 调用的id 参数。该调用将为您提供所需的数据。

      希望这会有所帮助!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-03-17
        • 2018-09-02
        • 1970-01-01
        • 2021-05-07
        • 2013-04-18
        • 1970-01-01
        • 1970-01-01
        • 2011-03-20
        相关资源
        最近更新 更多