我如何使用Twitter流API?

时间:2010-11-07 07:09:02

标签: python http api twitter streaming

stream.filter(locations=[-122.75,36.8,-121.75,37.8,-74,40,-73,41],track=["twitpic"])

这很有效。但是,它不是“和”。这是“或”。此行获取位置OR关键字。 我如何使它“和”?

这是我正在使用的库的代码:

def filter(self, follow=None, track=None, async=False, locations=None):
        self.parameters = {}
        self.headers['Content-type'] = "application/x-www-form-urlencoded"
        if self.running:
            raise TweepError('Stream object already connected!')
        self.url = '/%i/statuses/filter.json?delimited=length' % STREAM_VERSION
        if follow:
            self.parameters['follow'] = ','.join(map(str, follow))
        if track:
            self.parameters['track'] = ','.join(map(str, track))
        if locations and len(locations) > 0:
            assert len(locations) % 4 == 0
            self.parameters['locations'] = ','.join(['%.2f' % l for l in locations])
        self.body = urllib.urlencode(self.parameters)
        self.parameters['delimited'] = 'length'
        self._start(async)

https://github.com/joshthecoder/tweepy/blob/master/tweepy/streaming.py

1 个答案:

答案 0 :(得分:2)

http://dev.twitter.com/pages/streaming_api_methods#locations

  

边界框是逻辑OR。一个   位置参数可以组合   有跟踪参数,但请注意   所有术语都是逻辑ORd,所以   请求参数   轨道= Twitter并安培;位置= -122.75,36.8,-121.75,37.8   将匹配任何包含   术语Twitter(甚至非地理推文)或   来自旧金山地区。

...

  

可能有多个边界框   由连接指定   纬度/经度对,例如:   locations = -122.75,36.8,-121.75,37.8,-74,40,-73,41将跟踪旧金山的推文   和纽约市。

有关详细信息,请阅读完整文档。