我正在尝试使用Python中的tweepy来获取较旧的推文数据(大约2个月)。我试过,直到参数但没有成功。有没有人在tweepy或其他API中找到解决方法。
for id,tweet in enumerate (tweepy.Cursor(api.search, q='SpecificWord', since="2016-04-26", until="2016-04-28", lang="en", include_retweets=False ).items(200)):
#Write a row to the csv file
CSVW.writerow([tweet.created_at, tweet.retweet_count, tweet.text.encode('utf-8')])
答案 0 :(得分:4)
答案 1 :(得分:3)
有两种方法可以获取较旧的推文。
您获得了Tweepy的分叉版本,它支持多个身份验证处理程序。 guide关于如何使用它(不幸的是只有Python 2.7)。或者你使用Here is an instruction限制器来进行Tweepy。但是使用Twitter API,我认为最早的数据大约是7天。
另一种方法是使用this ratetime,它也适用于Python 3.这是一个如何使用它的示例。
首先安装lxml(版本3.5)& pyquery版本1.2.10):
pip3 install lxml==3.5.0
pip3 install pyquery==1.2.10
然后下载GetOldTweets-python并将文件夹got3复制到您的站点包文件夹中并运行Python。
import got3
max_tweets = 3
tweetCriteria = got3.manager.TweetCriteria().setUntil("2016-01-31").setQuerySearch("bitcoin").setMaxTweets(max_tweets)
for i in range(max_tweets):
tweet = got3.manager.TweetManager.getTweets(tweetCriteria)[i]
print(tweet.id)
print(tweet.username)
print(tweet.text)
print(tweet.date)
现在您将从2016年获得推文!
693584301917655041
bitcoinfirehose
Teenagers are using untraceable currency Bitcoin to buy dangerous drugs online http://ift.tt/20eIDwU #reddit #bitcoin
2016-01-31 00:59:18
693584300265070593
bitcoinfirehose
Hey guys I've seen a need to cashout to Visa. So I created a site to get moneypak codes via Bitcoin ! Please come check it out! …
2016-01-31 00:59:18
693584286210002944
b1eedr
Bitcoin 2.0: Fantasy Or Inevitability? https://www.cryptocoinsnews.com/bitcoin-2-0-fantasy-or-inevitability/ @CryptoCoinsNews
2016-01-31 00:59:14