我需要根据用户的位置找到Twitter用户。理想情况下应该是他们的当前位置,但如果它只是他们原来的位置,那也可以。例如,如果一个人来自巴西,但今天他们在德国,我希望能够找到他们作为“在德国”的Twitter用户。
此外,如果可能的话,我希望能够了解他们当前的城市,而不仅仅是国家。
我可以通过 Twitter API 来实现吗?怎么样?
我不想使用任何直接提供此服务的第三方服务,但是,使用第三方服务,我可以从中间接找到他们当前的位置是可以的。例如,如果在Facebook上,他们最近发布了一张照片“我已经在德国,yeaahhhh” - 那种事情。当然,我更喜欢Twitter API。
答案 0 :(得分:1)
您基本上寻找的是地理标记信息。但是,您希望根据用户的位置查找用户。你得到的答案并不容易,是的,#34;是"或者"没有",它实际上是基于你想要完成的事情。但是,既然您要询问Twitter API,那么Twitter API 不能做您想做的事情,但有很多方法。
您的问题主要集中在如何在给定位置查找用户。对于下面的示例,让我们说位置是"柏林,DE"
目前,根据您的要求,Twitter API有两种方法可以捕获基于位置的信息。
<强> User Search Method (users/search
): 强>
根据Twitter的文档,它声明此功能将根据您提供的任何查询返回用户。引用:
[ users / search ]为公共用户提供简单,基于相关性的搜索界面 Twitter上的帐户。尝试按主题兴趣查询,全名, 公司名称,位置或其他标准。完全匹配搜索是 不支持。
但是,位置信息根据他们的推文不。相反,它基于他们的个人资料位置信息(用户在首次创建他们的Twitter个人资料时输入的信息)。
因此,使用 Berlin,DE 示例:Jason住在美国加利福尼亚州(他的个人资料反映了他来自加利福尼亚州圣何塞的事实),但他最近访问了柏林,积极发推。包括用他的位置标记他的推文和所有。现在,如果您使用查询 Berlin,DE 进行用户/搜索,您在结果中找不到Jason,因为他的个人资料位置设置为加利福尼亚州圣何塞。 / p>
<强> Tweets Search Method (search/tweets
): 强>
根据Twitter的文档,此方法将根据您提供的任何查询(包括位置)向您返回推文(最多450条带有APP授权的推文)。使用geocode
查询,您可以在给定位置找到所需的信息。引用:
返回位于给定半径内的用户的推文 经/纬度。该位置优先取自 地理标记API,但将回归到他们的Twitter个人资料。该 参数值由“纬度,经度,半径”指定,其中 半径单位必须指定为“mi”(英里)或“km” (公里)。请注意,您不能通过API使用near运算符 地理编码任意位置;但是你可以使用这个地理编码 用于直接搜索地理编码的参数。最多1,000个 使用半径时将考虑不同的“子区域” 改性剂。
鉴于 Berlin,DE 示例,如果您使用此方法,您实际上会找到Jason的推文,因为他们已经被标记为柏林。此方法不返回您想要的个人资料/用户信息。但是,您可以利用此方法获取用户信息。
从本质上讲,您可以解析所有推文并收集用户ID,这正是您想要的。这是目前可通过API查看和访问的最佳解决方案。