在特定时间段内使用#标签搜索公共推文

时间:2015-04-12 23:08:14

标签: api search twitter tweepy

我目前正在开发一个与Twitter数据相关的项目。我已阅读有关Twitter API的一些信息,并创建了一个简单的客户端应用程序,旨在检索包含从2013年8月开始的特定关键字的所有公开推文。但是,我的代码不提供任何输出。我尝试过使用twitter4j和tweepy。这是我用Python编写的代码

__author__ = 'adichris'
import tweepy
from tweepy import Stream
from tweepy.streaming import StreamListener
from tweepy import OAuthHandler
import json
import datetime

consumerKey = 'vSjDyEGe9.........'
consumerSecret = 'uXYFZUtO7cEG8x.......'
accessToken = '277834326-CWwhpL............Pp.........'
tokenSecret = 'izE......0Y.....5....W'

auth = tweepy.OAuthHandler(consumerKey, consumerSecret)
auth.set_access_token(accessToken, tokenSecret)

def date_range(start,end):
    current = start
    while (end - current).days >= 0:
        yield current
        current = current + datetime.timedelta(seconds=50)

class TweetListener(StreamListener):
    def on_status(self, status):
        startDate = datetime.datetime(2015,1,01)
        stopDate = datetime.datetime(2015,4,20)
        for date in date_range(startDate,stopDate):
            status.created_at = date
            print "tweet" + str(status.created_at)+"\n"
            print status.text + "\n"

stream = Stream(auth,TweetListener(),secure=True,)
t = u'#dearmentalhealthprofessional'
stream.filter(track=[t])

然而,从here开始,我知道两年前无法回复推文。尽管如此,有没有办法如何使用任何Twitter的API从Twitter获取旧推文? 任何反馈将不胜感激。感谢

1 个答案:

答案 0 :(得分:0)

不幸的是,没有办法使用公共Twitter API来做到这一点。您只能在时间轴中导航3,200条最新推文,或搜索大约7-10天的数据。对于历史数据,您需要使用商业服务,例如Gnip。