YouTube Search API为我提供的视频数量少于每页请求的数量,但也为我提供了nextPageToken

时间:2014-09-06 13:45:48

标签: api search youtube youtube-api

下面的查询(First Request)说有24个结果,但只返回3个项目(当我要求每页20个时)......很好......但为什么它也给了我nextPageToken。我想,好吧,也许如果我的要求低于我要求的20,我就在最后......

但是...在下面的另一个案例中(第二次和第三次请求)它说有1717个视频并且它给了我前20个,但是当我得到下一页时它只给了我5个...还有一个nextPageToken

注意:这确实包含了一个位置和半径参数......也许这还不是很好。

那么问题是,当我的结果到达时,我怎么知道呢?

(编辑:我发现只获得5的原因是你仍然需要将maxResults和nextPageToken一起包含在内,所以如果nextPageToken为null或者数字,那么答案就是你最后的结果项目的数量小于结果页面。)

第一次请求

https://www.googleapis.com/youtube/v3/search?maxResults=20&type=video&order=rating&q=Stanford%20University&location=37.86854355%2C-122.502038433&locationRadius=6000m&key=AIzaSyDIOVCAngpI-xPkb30W5c6ee0PSBV9KbF8&part=id%2Csnippet

{
    "nextPageToken": "CBQQAA",
    "pageInfo": {
        "totalResults": 24,
        "resultsPerPage": 20
    },
    "items": [
        {
            "id": {
            "kind": "youtube#video",
            "videoId": "WMfwyjJz9hs"
            },
        },
        {
            "id": {
            "kind": "youtube#video",
            "videoId": "aGnYxoGHYHQ"
            },
        },
        {
            "id": {
            "kind": "youtube#video",
            "videoId": "s50ZSCKA1zY"
            },
        }
    ]
}

第二次和第三次请求

https://www.googleapis.com/youtube/v3/search?maxResults=20&type=video&order=rating&q=Sausalito&location=37.8590937%2C-122.4852507&locationRadius=6000m&key=AIzaSyDIOVCAngpI-xPkb30W5c6ee0PSBV9KbF8&part=id%2Csnippet

https://www.googleapis.com/youtube/v3/search?pageToken=CBQQAA&key=AIzaSyDIOVCAngpI-xPkb30W5c6ee0PSBV9KbF8&part=id%2Csnippet

1 个答案:

答案 0 :(得分:0)

我遇到类似的麻烦。我通过在请求中删除字段& order = rating来修复错误。我认为此参数会排除零(0)评级的视频/此网址返回更多结果https://www.googleapis.com/youtube/v3/search?maxResults=20&type=video&order=rating&q=Sausalito&location=37.8590937%2C-122.4852507&locationRadius=6000m&key=AIzaSyDIOVCAngpI-xPkb30W5c6ee0PSBV9KbF8&part=id%2Csnippet 默认订单参数值是'相关性'返回类似的结果或者您可以尝试& order = viewCount参数返回类似的结果