【问题标题】:Empty response pages on YouTube API v3 requestYouTube API v3 请求上的空响应页面
【发布时间】:2020-04-22 08:50:45
【问题描述】:

我正在尝试使用 youtube api 从一个频道获取所有视频。我正在使用 python 打开请求并从服务器获取 json 响应。我正在测试的频道有 1500 个视频,但我只能获得大约 500 个视频,因为最后 10 个左右的 nextPageToken 响应是空的。

https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=50&channelId=" + channelid + "&order=date&key=" + mykey

这是我的第一个电话,我收到了第一个 nextPageToken 和前 50 个视频。

while "nextPageToken" in json_data:
    nextPageToken = json_data["nextPageToken"]
    tokenDictionary.append(nextPageToken)
    r = requests.get(
        "https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=50&&type=video&channelId=" + channelid + "&order=date&key=" + mykey + "&pageToken=" + nextPageToken)
    json_data = r.json()
    nextPageToken = json_data["nextPageToken"]
    print("token not encountered")
    tokenDictionary.append(nextPageToken)
    print(json_data["nextPageToken"])

之后,我对新遇到的令牌做同样的事情。我没有超出我的配额。该频道只有 6 个直播视频。

有什么想法吗?

【问题讨论】:

  • 这可能是由于 Youtube API 本身的问题。 This post 深入研究它。不幸的是,谷歌的问题跟踪器上有很多未解决的问题存在同样的问题。

标签: python youtube-api youtube-data-api


【解决方案1】:

YouTube 搜索的软限制是返回 500 个视频。建议按日期拆分搜索,以便每个查询返回

【讨论】:

  • 感谢您的回复。我也在一个包含大约 200 个视频的频道上测试了我的代码,但它只返回了 100 个视频。我将继续尝试块方法。
猜你喜欢
  • 2016-11-28
  • 2015-10-05
  • 1970-01-01
  • 2014-11-13
  • 2018-10-21
  • 2019-02-06
  • 1970-01-01
  • 2014-09-22
  • 2013-01-28
相关资源
最近更新 更多