2012-05-21 33 views
0

我正在嘗試從推文中獲取地理位置。 對於我的測試,我發佈了新的推文地理引用,但是當我得到它們的json時,元素「geo」爲null。爲什麼?他們怎麼了?瞭解推文上的地理位置

我不想按範圍和地理位置搜索:我想搜索一些由特定hashtag索引的推文,然後檢索'geo'json元素。 我試圖搜索其他推文(不是我的),有時我把'geo'元素作爲一個完整的對象,與座標數組。

那麼,我能做些什麼讓'geo'元素不爲null?

我做了4個員額地理參考:my tweets

的位置是:44.694704,10.528611

編輯:添加地理編碼PARAM

這是我做的服務器端(純PHP):

$conn = new OAuth (CONSUMER_KEY, CONSUMER_SECRET); 
$conn->setToken (ACCESS_TOKEN, ACCESS_TOKEN_SECRET); 
$conn->fetch (API_URL, array ('q' => '#testhashtagandgeo', 'geocode' => '44.694704,10.528611,4km')); 
echo $conn->getLastResponse(); 

我用PHP OAuth的鹼,並且每個常數被正確地定義的,所以它的工作原理好。

客戶端(ExtJS的):

Ext.onReady (function() { 
    Ext.Ajax.request ({ 
     url: 'proxy.php' , 
     disableCaching: false , 
     success: function (xhr) { 
      var js = Ext.JSON.decode (xhr.responseText); 
      Ext.each (js.results, function (tweet) { 
       if (tweet.geo !== null) { 
        console.log ('lat = ' + tweet.geo.coordinates[0] + ' - lng = ' + tweet.geo.coordinates[1]); 
       } 
      }); 
      console.log (js); 
     } , 
     failure: function (xhr) { 
      console.log ('something\'s wrong!'); 
     } 
    }); 
}); 

預先感謝。

威爾克

回答

0

您需要read the documentation

如果查詢包括地理編碼參數,用戶在Twitter上發佈與地理信息僅包括位置數據。

所以,你需要像這樣添加到您的查詢

&geocode=37.781157,-122.398720,25mi 

或任何位置,你想要的。

+0

因此,查詢不帶地理編碼的twetter到查詢中是不可能的? – Wilk

+0

沒錯。你需要給它一個地理編碼,以獲取geoencoded信息。有兩種方法圍繞此 1)獲取單獨的推特ID並從主API查詢它們。 2)放置一個位置和足夠高的半徑以捕捉所有用戶。 –

+0

很好。我剛剛編輯了我的問題:我添加了geocode參數和我的twitter主頁。正如你所看到的,在我報道的座標上有4個地理位置。但是,它還沒有工作。我沒有收到那個標籤(#testhashtagandgeo)和那些coords(44.694704,10.528611)的帖子。您可以增加地理編碼的半徑,但結果相同。 – Wilk