有没有办法让我下载特定地区所有Twitter用户发来的所有推文?

时间:2014-11-15 19:45:31

标签: python twitter nlp

我有没有办法使用Python下载特定时间段(比如11月15日开始和11月22日结束的一周)特定地区(例如美国)的所有Twitter用户发布的所有推文?这是针对NLP任务的。现在,我能够下载与我搜索的某些主题相关的推文,并且只能下载在程序运行时发布的推文。无论主题如何,我希望能够通过推文获取数据挖掘/ NLP任务。

1 个答案:

答案 0 :(得分:3)

是的!你可以。

使用Tweepy

import tweepy

consumer_key = ''
consumer_secret = ''

access_token_key = ''
access_token_secret = ''

auth1 = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth1.set_access_token(access_token_key, access_token_secret)

class StreamListener(tweepy.StreamListener):
    def on_status(self, tweet):
        print 'Ran on_status'

    def on_error(self, status_code):
        print 'Error: ' + repr(status_code)
        return False

    def on_data(self, data):
        print 'Ok, this is actually running'


l = StreamListener()
streamer = tweepy.Stream(auth=auth1, listener=l)
setTerms = ['twitter']
streamer.filter(track = setTerms)

stream.filter()中,您可以指定区域,以获得更多details

stream.filter(locations=[ "here you can define a region by listing the lang/lat" ], track=terms)

如果您有特定的定义区域,可以在列表器中检查

def on_status(self, status):
      if status.coordinates .. :