【发布时间】: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