传递“ publishedBefore”,“ publishedAfter”和“ nextPageToken”参数时,YouTube Data API v3不返回任何结果

时间:2018-07-12 14:59:58

标签: youtube-api youtube-data-api google-apis-explorer

由于浏览器中的youtube不允许我们选择特定的时间范围(它只有特定的过滤器,例如“今年”,“本月”,“本周”),因此我选择对youtube使用python API,因为我需要提取特定时间范围内的一些视频。youtube API最多允许每个服务调用50个结果。因此,我们需要遍历结果并在后续服务调用中传递下一页令牌,以实现分页和提取数据。但是,在将nextPageToken传递到服务调用时,我没有得到任何结果。API调用的输入和输出在下面提到

**1st service call Input:**
part : id,snippet
maxResults : 50
order  : date
publishedAfter : 2018-06-01T00:00:00Z
publishedBefore : 2018-06-07T00:00:00Z
q : rice water hair
type : video

**1st service call Output:**
{
 "nextPageToken: "CDIQAA",
 "pageInfo": {
 "totalResults": 3957,
 "resultsPerPage": 50
},
 "items":[
    ///it has a list of 20 items even though I have specified max results as 50///
 ]
}

**2nd service call Input:**
part : id,snippet
maxResults : 50
order  : date
pageToken : CDIQAA
publishedAfter : 2018-06-01T00:00:00Z
publishedBefore : 2018-06-07T00:00:00Z
q : rice water hair
type : video

**2nd service call Output:**
{
 "nextPageToken": "CGQQAA",
 "pageInfo": {
 "totalResults": 3957,
 "resultsPerPage": 50
},
 "items": [
    ///empty list///
 ]
}

我已经在google开发人员控制台中尝试了上述方法以及使用python api代码。两者均产生相同的输出。此查询的结果总数为3957(在两个api调用的输出中均找到)。 ,我有以下问题
1)当我在输入中传递nextPageToken时,为什么第二个服务调用的输出中没有结果(空项目列表)?
2)为什么即使我将最大结果指定为50,第一个服务调用的输出也只返回20个结果?

0 个答案:

没有答案