Youtube api Youtube API视频列表返回的结果少于指示的结果
我正在自己的youtube频道上运行一个查询,以检索所有视频标题。我有680个视频,但只能得到其中的一半。我所做的是创建一个代码,该代码会在创建频道后的所有年份进行迭代,并在一年内使用pageTokens浏览50个视频包 因此,查询如下所示:Youtube api Youtube API视频列表返回的结果少于指示的结果,youtube-api,youtube-data-api,Youtube Api,Youtube Data Api,我正在自己的youtube频道上运行一个查询,以检索所有视频标题。我有680个视频,但只能得到其中的一半。我所做的是创建一个代码,该代码会在创建频道后的所有年份进行迭代,并在一年内使用pageTokens浏览50个视频包 因此,查询如下所示: https://www.googleapis.com/youtube/v3/search?key={XXXXX}&channelId={XXXXX}&part=snippet,id&order=date&type=video
https://www.googleapis.com/youtube/v3/search?key={XXXXX}&channelId={XXXXX}&part=snippet,id&order=date&type=video&maxResults=50&publishedAfter=2018-01-01T00:00:00Z&publishedBefore=2019-01-01T00:00:00Z&pageToken=CDIQAA
在这些查询的结果中,我发现有以下内容:
array (
'totalResults' => 321,
'resultsPerPage' => 50,
),
通过迭代页面,我得到了两个页面,其中包含50个项目,然后是另一个页面,其中结果显示为'resultsPerPage'=>50,但只包含35个视频,该年剩余的JSON数据中包含0个项目。因此,有问题的页面只返回135个结果,而不是321个。一旦我切换到下一年,我又得到了两页完整的结果,然后是一页缺少一些,然后是空的
你知道会出什么问题吗
以下是最后一个JSON数据集的摘录:
array (
'kind' => 'youtube#searchListResponse',
'etag' => '"XpPGQXPnxQJhLgs6enD_n8JR4Qk/IsJyhRyDQ6qMmAHldktSRzEN2qs"',
'nextPageToken' => 'CJYBEAA',
'prevPageToken' => 'CGQQAQ',
'regionCode' => 'DE',
'pageInfo' =>
array (
'totalResults' => 321,
'resultsPerPage' => 50,
),
'items' =>
array (
0 =>
[..contents..]
35 =>
[..last content and closing brackets..]
如果您希望获得给定频道的整个视频列表而不遗漏任何内容,我建议您改为使用,通过向端点的playlid参数传递适当的值来查询给定频道的上载列表 一个给定频道的uploads PlayID是在查询时获得的。所需的ID可在中找到。通常,频道ID及其相应的上传播放列表ID由s/^UC[0-9a-zA-Z_u-]{22}$/UU\1/关联
还有一句话:你应该知道视频发布时间和上传时间之间的差异。可能是重复的,非常感谢!也可以在这里找到这一点作为替代解释: