这是我尝试流式传输推文的项目中的部分代码,我计划将其保存到 Google App Engine 中的数据库中。能够获得坐标的纬度和经度值对我来说很重要。(我计划稍后绘制这些。)
目前的结果看起来像这样......
'tweet text'@REDACTED 不确定,说实话……作为谷歌产品,你会这么认为。他们可能在网上商店有官方扩展。\'用户名'REDACTED \'Created at't2013-09-26 08:39:45 \'Created with'tTwitter for Android \'geo't{u'type': u'Point', u'coordinates': [52.569001, -2.7846582]}\'coordinates't{u'type': u'Point', u'coordinates': [-2.7846582, 52.569001]}
我想做的是改变它所说的“如果status.coordinates不是None”来检查坐标是否在一个范围内。即 Lat 50 - 55 和 long 0 - 5。
谢谢!:)
class CustomStreamListener(tweepy.StreamListener):
def on_status(self, status):
if status.coordinates is not None:
try:
print "'tweet text'%s\n\ 'User Name't%s\n\ 'Created at't%s\n\ 'Created with't%s\n\ 'geo't%s\ 'coordinates't%s" % (status.text,
status.author.screen_name,
status.created_at,
status.source,
status.geo,
status.coordinates)
except Exception, e:
print >> sys.stderr, 'Encountered Exception:', e
pass
def on_error(self, status_code):
print >> sys.stderr, 'Encountered error with status code:', status_code
return True # Don't kill the stream
def on_timeout(self):
print >> sys.stderr, 'Timeout...'
return True # Don't kill the stream