Twitter Search API の利用
もっとも基本的なプログラムを書いた.
package twitter.search; /* ** Twitter Search API の search メソッドを利用して ** ツィートを収集するプログラム ** (メモ) Twitter Search API では認証が不要. */ import java.net.*; import java.io.*; import org.json.*; public class Search { public static void main(String[] args) { try { // HTTPリクエスト URL url = new URL("http://search.twitter.com/search.json?q=evernote"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); // レスポンスコード System.err.printf("%d %s\n", connection.getResponseCode(), connection.getResponseMessage()); // 成功ならレスポンスボディを表示する if (connection.getResponseCode() == HttpURLConnection.HTTP_OK) { BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8")); String line = br.readLine(); System.out.println(line); try { JSONObject json = new JSONObject(line); JSONArray tweets = json.getJSONArray("results"); //つぶやきの配列 Integer max_id = json.getInt("max_id"); Integer since_id = json.getInt("since_id"); String next_page = json.getString("next_page"); Integer result_per_page = json.getInt("results_per_page"); String query = json.getString("query"); System.out.println("ResultPerPage : " + result_per_page); System.out.println("query : " + query); System.out.println("next_page : " + next_page); for(int i = 0; i < tweets.length(); i++){ JSONObject tweet = (JSONObject)tweets.get(i); String date = tweet.getString("created_at"); String user = tweet.getString("from_user"); String text = tweet.getString("text"); String lang = tweet.getString("iso_language_code"); System.out.println(date); System.out.println(lang + "\t" + text); } } catch (JSONException e) { System.err.println(e); } } } catch (Exception e) { e.printStackTrace(); } } }