【问题标题】:Unexpected behaviour while paging with youtube API V3 [Google APIs Client Library for Python]使用 youtube API V3 进行分页时出现意外行为 [适用于 Python 的 Google API 客户端库]
【发布时间】:2014-02-02 08:09:55
【问题描述】:

使用适用于 Python 的 Google API 客户端库和搜索端点 API V3 执行以下查询:

search_response = youtube.search().list(
                        q="Mallorca",
                        part="id,snippet",
                        maxResults=50,
                        order="date",
                        publishedBefore="2014-1-1T2:00:00Z",
                        publishedAfter="2014-1-1T1:00:00Z",
                    ).execute() 

响应显示 search_response.pageInfo.totalResults 为 186。这意味着需要分页来检索所有结果。然而,在这个回复中,我在search_response.items 下只得到一个结果(一个视频),而不是第一页的预期 50 个。

如果我使用nextPageToken (=CDIQAA) 查询下一个结果页面:

search_response = youtube.search().list(
                        q="Mallorca",
                        part="id,snippet",
                        maxResults=50,
                        order="date",
                        publishedBefore="2014-1-1T2:00:00Z",
                        publishedAfter="2014-1-1T1:00:00Z",
                        pageToken= "CDIQAA"
                    ).execute() 

我再次仅获得一个结果,即在第一次查询中检索到的相同视频(相同 videoId)。当我浏览 search_response 的下一页直到没有更多可用页面(nextPageToken未包含在响应中)时,也会发生同样的事情。

已阅读上一个问题:

page tokens use youtube api v3

还有这个:

Is youtube data api paging consistent if you use pagetokens? (v3 data api)

但他们没有解释为什么我只得到一个结果,即响应传递的所有页面的相同视频。

这是 youtube API 的问题还是我做错了什么?感谢您的帮助。

【问题讨论】:

  • 看起来这是 youtube API 的未解决问题:issue 5173
  • 是的,你是对的,关注问题。现在您可以避免订购以获得正确的结果,但问题应该很快就会得到解决。
  • 非常感谢@IbrahimUlukaya,我将关闭此问题并按照您的建议关注问题。

标签: python youtube-api


【解决方案1】:

这是 youtube API 的一个未解决问题:

issue 5173

预计很快会修复...

如果不应用排序,可以获得正确的结果。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-17
    • 1970-01-01
    • 2011-07-10
    相关资源
    最近更新 更多