【问题标题】:Youtube Data API get oldest videos from a channelYoutube Data API 从频道中获取最旧的视频
【发布时间】:2017-05-17 09:06:27
【问题描述】:

我使用order=date 成功地从 youtube 频道获取了最新视频,我现在想获取最旧的视频,因为 youtube api 在 500 个结果后没有返回页面。有没有一个参数可以做到这一点?

     $ch = curl_init();
            curl_setopt($ch,CURLOPT_URL,'https://www.googleapis.com/youtube/v3/search?
key='.$api_key.'&channelId='.$channel_id.'&part=snippet,id&order=date&maxResults='.$limit.'&fields=*');

            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            $result = curl_exec($ch);
            curl_close($ch);

【问题讨论】:

    标签: youtube youtube-api


    【解决方案1】:

    没有按相反日期顺序排序的记录方法。看;

    https://developers.google.com/youtube/v3/docs/search/list

    YouTube 对退回的项目提供 500 个限制,因此很遗憾,您可以做到这一点的唯一方法是浏览 500 个结果并在您的应用程序中对其进行排序。

    如果您想接收尽可能多的视频,您可以使用每个可能的订单值进行 API 调用,因此 'order' 与 'date'、'rating'、'relevence'、'title'、'videoCount'、 'viewCount' 然后删除所有重复项。当然只适用于频道 > 500 个视频,您可以在执行此操作之前发出额外的 API 请求以获取“videoCount”,如果唯一视频的数量等于“videoCount”值,则中断操作。它很混乱,不能保证提取所有结果,但在当前 API 的情况下,这是唯一的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-17
      • 2019-08-10
      • 2020-12-07
      • 2014-06-06
      • 2021-04-20
      • 2021-05-07
      • 2019-10-06
      • 1970-01-01
      相关资源
      最近更新 更多