无法从YouTube数据API V3 [python]的所有评论(Can't get all

2019-09-25 17:56发布

我有一个Python函数,它允许你从YouTube视频的所有评论。 因此,我使用YouTube API V3 comments.list方法。

key = 'My Key'
textFormat = 'plainText'
part = 'snippet'
maxResult = '100'
order = 'relevance'
nextToken = ''
videoId = 'Ix9NXVIbm2A'

while(True):
        response = requests.get("https://www.googleapis.com/youtube/v3/commentThreads?&key="+key+"&part="+part+"&videoId="+idVideo +"&maxResults="+maxResult+"&order="+order+"&pageToken="+nextToken)

        data  = response.json() #kind - etag - ?nextPageToken

        if 'error' in data:
            print(data)
            break

        for item in data['items']:
            snippet = item["snippet"]
            toplevelcomment = snippet['topLevelComment']
            content = toplevelcomment['snippet']

            commentid = toplevelcomment['id']
            authorname = content['authorDisplayName']
            textOriginal = content['textOriginal']

                #lists
            commentids.append(commentid)
            authornames.append(authorname)
            textOriginals.append(textOriginal)


        if 'nextPageToken' in data:
            nextToken = data['nextPageToken']

        else:
            break

一切进展良好,从pageToken到另一个。 但是,当它到达pageToken号13,API总是返回

{
'error': 
 {
 'errors': 
  [
   {
    'domain': 'youtube.commentThread', 
    'reason': 'processingFailure', 
    'message': 'The API server failed to successfully process the request. While this can be a transient error, it usually indicates that the requests input is invalid. Check the structure of the <code>commentThread</code> resource in the request body to ensure that it is valid.', 
    'locationType': 'other', 
    'location': 'body'
   }
  ], 
 'code': 400, 
 'message': 'The API server failed to successfully process the request. While this can be a transient error, it usually indicates that the requests input is invalid. Check the structure of the <code>commentThread</code> resource in the request body to ensure that it is valid.'
 }
}

我使用的是有效的密钥和pageToken太有效(API返回)

有没有人有同样的问题还是我做错了什么?

文章来源: Can't get all comments from Youtube Data API V3 [Python]