我使用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);
答案 0 :(得分:0)
没有记录的逆向日期订购方式。看到;
https://developers.google.com/youtube/v3/docs/search/list
YouTube对退回的商品提供500限制,因此不幸的是,您只能通过500个结果进行分页,并在您的应用程序中对其进行排序。
如果您想接收最多可能的视频数量,您可以使用每个可订购的订单价值进行API调用,以便'订购'包含'date','rating','relevence','title','videoCount',然后'viewCount'删除任何重复项。当然只适用于渠道> 500个视频,您可以在执行此操作之前发出额外的API请求以获取'videoCount',如果唯一视频的数量等于'videoCount'值,则会中断操作。它凌乱而且不能保证拉出所有结果,但是在给定当前API的情况下,这是唯一的方法。