如何解决Tweepy库中的下载时间是否取决于互联网连接?
我正在收集属于某些特定ID帐户的推文,每200个ID需要花费12个小时以上。它取决于互联网连接还是我的代码行可能更有效?预先感谢您的帮助!
api = tweepy.API(auth,wait_on_rate_limit=True)
for id_ in ids:
df = pd.DataFrame()
outtweets = []
try:
for tweet in tweepy.Cursor(api.user_timeline,id=id_).items():
outtweets.append({'id':id_,'tw_id_str': tweet.id_str,'tw_created_at':tweet.created_at,'tw_favorite_count':tweet.favorite_count,'tw_retweet_count':tweet.retweet_count,'tw_text':tweet.text.encode("utf-8").decode("utf-8")})
df = pd.DataFrame(outtweets)
df.to_csv("tweets_of_ids.csv",mode='a')
except tweepy.TweepError as e:
continue
ps:我无法删除wait_on_rate_limit,否则它会给我错误代码401,并且我必须重新生成访问令牌。
解决方法
使用wait_on_rate_limit
会使Tweepy放慢速度,以确保您的漫游器不会消耗所有可用的调用,然后开始引发错误。
您的漫游器和Twitter之间的带宽会增加一些延迟,但是考虑到您遇到的吞吐量(并且考虑仅下载文本),这并不是瓶颈。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。