我希望通过YouTube API V3从频道ID中随机检索4个视频。 因此,当我刷新页面时,我想要的是检索到的视频发生变化。 我创建的脚本是PHP语言,一个Wordpress站点内的自定义插件。
现在我使用这个api调用,但这总是检索相同的视频:
$api_call = "https://www.googleapis.com/youtube/v3/search?order=date&part=snippet&channelId=".$channelId."&maxResults=4&key=".$YouTube_API_key."";
有一种方法可以通过YouTube API随机获取视频吗?
如果有人认为我必须使用像rand这样的php功能,但我必须获取所有视频,所以如果我有200个视频且maxResults只能达到最大值50,那么我无法做到这一点办法。
答案 0 :(得分:0)
我建议采取三管齐下的方法:
答案 1 :(得分:0)
如果有可用的下一页数据,您获得的每个结果都应该包含nextPageToken
。例如:
{
"kind": "youtube#searchListResponse",
"etag": "\"m2yskBQFythfE4irbTIeOgYYfBU/3McBp6TfA-1T7NXO6x9Lr5WXpKI\"",
"nextPageToken": "CBkQAA",
"regionCode": "GB",
"pageInfo": {
"totalResults": 1000000,
"resultsPerPage": 25
}
您可以使用pageToken
构建一个额外的请求
如果超过1页,将为您提供下一页的结果。 e.g。
$nextApiCall = "https://www.googleapis.com/youtube/v3/search?order=date&part=snippet&channelId=<>&pageToken=CBkQAA";
您可以继续拨打API电话,直到您达到&#34; totalResults&#34;数字(或者不再有下一页令牌)。
获得所有结果后,您可以array_rand
从阵列中获取随机索引。