我正在尝试通过tweet id(大约2300个ID)使用tweepy查询推文 但我每次只能查询大约185个ID,然后必须等待15分钟,这意味着2300个ID需要大约3个小时才能完成。
使用api即:
consumer_key = 'xxxxxx'
consumer_secret = 'xxxxxx'
access_token = 'xxxxxxxx'
access_secret = 'xxxxxx'
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)
api = tweepy.API(auth,wait_on_rate_limit=True,wait_on_rate_limit_notify=True)
然后使用api.get_status方法
遍历tweet_id中的每个id我确实谷歌周围,并证明可能只有应用程序的查询允许在15分钟的窗口内提出更多请求,任何人都可以请指出我如何用tweepy制作仅限应用程序的请求?
感谢
答案 0 :(得分:2)
您可以改为使用statuses_lookup
(tweepy docs,twitter docs),每次通话最多可传递100个ID。根据{{3}},使用此方法的限制是300个请求。也就是说,你可以在达到窗口限制之前获得300x100 = 30000条推文,并且必须等待15分钟。你的2300 ids会很快收集。
希望有所帮助
更新以回复评论:
来自Twitter文档:
如果请求的推文未知或被删除,那么除非map参数设置为true,否则不会在结果列表中返回该推文,在这种情况下,它将返回值为null。
所以你不会真的得到错误,但你可能不会收到推文。因此,您需要将返回的结果与ID列表进行比较,以查看未返回的推文。
答案 1 :(得分:0)
我相信您可以使用tweepy 2.0进行仅应用程序身份验证
阅读本文:https://shogo82148.github.io/blog/2013/05/09/application-only-authentication-with-tweepy/
我希望这有帮助!