你基本上想要的是地理標記的信息。但是,你想根據他們的位置找到用戶。你會得到的答案不是一個簡單的「是」或「否」,它的字面意思是基於你想要完成的。但是,由於您詢問Twitter API,所以Twitter API 不能做你想做的事,但是有辦法繞過它。
您的問題主要集中在如何找到給定位置的用戶。對於下面的例子中,假設該位置是「柏林,DE」
目前,你問什麼,Twitter的API有兩個方法,爲您捕捉基於位置的信息。
User Search Method (users/search
):
根據Twitter的文檔,它指出該函數將返回系統會根據您提供力所能及的查詢用戶。引述:
[用戶/搜索]在Twitter提供了一個簡單的,基於相關性的搜索界面公共用戶 帳戶。嘗試通過專題興趣查詢,全名, 公司名稱,地址或其他標準。完全匹配搜索不支持 。
但是,根據他們的推文,位置信息是而不是。相反,它是基於他們的個人資料的位置信息(該信息的用戶類型的時候,他們首先創建自己的Twitter個人資料)。例如:傑森住在美國加利福尼亞州(他的個人資料反映了他來自加利福尼亞州聖何塞的事實),但他最近正在柏林訪問,並且正在柏林積極發佈推文。包括標記他的推文與他的位置和所有。現在,如果你做的查詢柏林,DE一個用戶/搜索,你會不會在結果中,因爲他的配置文件的位置被設置爲加利福尼亞州聖何塞,找到傑森。
Tweets Search Method (search/tweets
):
根據Twitter的文檔,此方法將根據您所提供的任何查詢,包括位置返回你的tweet(高達450個鳴叫與APP授權)。使用geocode
查詢,您可以在給定位置找到所需的信息。引述:
返回鳴叫由位於定 緯度/經度的給定半徑內的用戶。該位置優先從 地理標記API獲取,但會回退到他們的Twitter配置文件。 參數值由「緯度,經度,半徑」指定,其中 半徑單位必須指定爲「mi」(英里)或「km」 (公里)。請注意,您不能通過API 使用near運算符來對任意位置進行地理編碼;但是,您可以使用此地理編碼 直接在地理編碼附近進行搜索。當使用半徑 修飾符時,將考慮最多1,000個不同的「子區域」。
鑑於柏林,DE例如,如果你使用這種方法,你會發現其實傑森的鳴叫,因爲他們標記柏林。此方法不會返回所需的配置文件/用戶信息。但是,您可以利用此方法獲取用戶信息。
實質上,您可以解析所有推文並收集用戶ID,這正是您想要的。這是通過API可見和可訪問的最佳解決方案。
可能重複? http://stackoverflow.com/questions/13812579/twitter-api-location-of-tweets – Adib
@Adib,不,這是不同的和過時的。 – Ommonnna
你看過這個嗎? https://dev.twitter.com/overview/api/twitter-libraries另外,你看過嗎? https://dev.twitter.com/rest/reference/get/statuses/show/%3Aid該文檔使您可以輕鬆,直接地獲得您想要的內容:'== About Geo == 如果沒有地理標籤對於狀態,則會出現空的 或「geo」:{}。只有當用戶使用地理標籤API發送狀態/更新時,才能填充此信息。' –
Adib