如何解决是否有更好/更快的方法来查询 Twitter 中包含字符串的历史推文?
所以我试图获取自某一年以来符合特定搜索条件的所有推文(目前我只是提取 X 条推文,看看这个数字是否让我回到了我感兴趣的那一年在).
搜索条件只是推文中包含的字符串。以“苹果”为例。我也在尝试过滤掉 RT。
这显然将是数十万条,可能更像是数百万条推文。
为了尝试实现这一点,我一直在使用 Tweepy Twitter API:
def getTweets(searchValue,numOfTweets):
i = 0
tweetStream = tweepy.Cursor(twitterAPI.search,q=searchValue,tweet_mode="extended").items(numOfTweets)
f = open('csvfile.csv','w')
while True:
try:
for tweet in tweetStream:
if (tweet.full_text[0:2] != 'RT'):
print('Tweets processed:' + str(i))
f.write(str(formatTweet(tweet.full_text)))
f.write(str(tweet.created_at) + '\n')
i += 1
#Break here when all tweets in the stream have been processed
break
except tweepy.TweepError:
print('Sleeping for 2 mins to maintain Twitter API connection... \n')
time.sleep(120)
f.close()
return True
问题是它运行得非常慢。每秒可能会发布 50 条推文。如果我需要回到几年前,这意味着让我的程序运行数天/数周。
我之前没有使用过 Tweepy,所以我不确定实现我想要的最佳方式。我的代码是我在其他地方看到的几篇文章/答案的混合,所以我确定我的方法可能存在几个问题。有什么建议吗?
解决方法
您可能需要查看此文档 developer.twitter.com
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。