如何使用 Twitter Search API
(或其他方式)获取具有 "geo"
参数的推文列表?
--编辑--
例如:我想通过 #apple 标签获取带有地理标记的推文列表,不使用位置过滤器,在全球范围内。
http://search.twitter.com/search.json?geocode=37.781157,-122.398720,1mi
geocode=37.781157,-122.398720,1mi
进行搜索,那么这也算是一个“过滤后的信息流”,因为它仅请求带有地理标签的推文。尽管目前无法实现这一点,感谢你提出来了,但是提供这个功能不会比现有的地理标签过滤器浪费更多的服务器时间,而且它消耗的带宽会更少,因为我们不必在只想获取子集时拉取所有的推文。 - JMTyler根据 Twitter API
文档,你的搜索查询应该符合以下格式:
http://search.twitter.com/search.json?geocode=37.781157,-122.398720,1mi
这里的 37.781157
是纬度,-122.398720
是经度,1mi
表示搜索半径。
# geocode Returns tweets by users located within a given radius of the given latitude/longitude. The location is preferentially taking from the Geotagging API, but will fall back to their Twitter profile. The parameter value is specified by "latitude,longitude,radius", where radius units must be specified as either "mi" (miles) or "km" (kilometers). Note that you cannot use the near operator via the API to geocode arbitrary locations; however you can use this geocode parameter to search near geocodes directly.
- Jasdeep Singh你可以搜索每一条推文,但只保存带有地理标记的。
我知道这听起来有点不合理,但效果还不错。
如果你调用搜索结果,你可以说明:
for result in results:
if result.geo != None:
print result.text.encode('utf-8', errors='ignore') # or do anything you want with the tweets