请帮帮忙。我对蟒蛇很陌生。我想从用户the中检索tweet,我使用了以下代码。
api = twitter.Api(consumer_key, consumer_secret, access_token, access_secret)
tweets = api.GetUserTimeline(screen_name = user.screen_name,count = 500)我怎么会注意到它只从推特时间线的第一页检索了200条推特。我要500条推特。因此,代码应该迭代3页,以提供500个tweet。是否有任何功能可以这样做。请帮帮忙。粘在上面两天了。请帮帮忙
发布于 2015-11-07 13:51:24
每个api调用只能接收200个tweet。您所能做的就是保存最古老的tweet id,并获得比您保存的tweet id更老的tweet id。这将使您在twitter规定的tweet总数限制内获得任意数量的tweet。
#no of tweets you want to request
max_tweets = 500
#make initial request for most recent tweets (200 is the maximum allowed count)
new_tweets = api.GetUserTimeline(screen_name = screen_name,count=max_tweets)
#save most recent tweets
alltweets.extend(new_tweets)
#save the id of the oldest tweet less one
oldest = alltweets[-1].id - 1
#loop for remaining tweets
while(len(alltweets)<max_tweets):
alltweets.extend(api.GetUserTimeline(screen_name = screen_name,count=(max_tweets-len(alltweets)),max_id=oldest))
oldest = alltweets[-1].id - 1我没有检查它是否起作用,但它应该能用。
https://stackoverflow.com/questions/33582587
复制相似问题