使用tweet4j按位置获取tweet



我想在河内得到这条推文。

1)我使用搜索查询,但我收到重复的tweet,如何避免这种情况?

Query query = new Query(queryString);
       GeoLocation city = new GeoLocation(latitude, longitude);
       query.geoCode(city, 20, "mi");

2) tweetID是什么?它会随着时间增长吗?我可以使用query.setSinceId();和上次检索的maxID吗?

3)我尝试其他方式通过使用流来获取Tweet,但它的接收Tweet不在我想要的区域(例如:来自中国或老挝)我错了吗?

 double lat = 21.082647;
 double lon = 105.822526;
 double lon1 = lon - 0.05;
 double lon2 = lon + 0.05;
 double lat1 = lat - 0.05;
 double lat2 = lat + 0.05;
 double box[][] = {{lon1, lat1}, {lon2, lat2}};
 fq.locations(box);

Twitter的API首先搜索带有地理标记的tweet,如果tweet没有明确地带有地理标记,则返回到用户配置文件位置。这可能是你的搜索从你的边界之外的位置返回推文的原因。

例如:

假设您在河内的地理位置搜索包含查询的tweet。搜索将返回包含查询的带有明确地理标记的来自河内的tweet。该搜索还将返回来自不同地理位置的tweet,其中包含配置文件位置为Hanoi的用户的查询。

搜索API似乎不是你想要的,因为它只返回相关的tweet(最近的和流行的)。如果你想获得一个完整的tweet列表,那么你需要Streaming API。

在你输入你的晚/长后,你会得到一些你想要的区域之外的推文(它只是少数),你可以通过后处理过滤。至少在这一点上,你得到了一个比搜索API更完整的列表。

我不确定你从中国或老挝得到了多少,但你总是可以把你的边界限制在河内。我觉得你们的字体太小了+/- 0.05不太大也许105.76,20.96,105.94,21.1可以帮上忙

我认为你的过滤器是错误的。限制更多,以便找到解决方案

最新更新