twitter 4j とstreaming APIでつぶやきを取得したいのですが、一時間に60ツイートくらいしか取得できないので、ほかに効率の良いコード等ありましたら、ご教授頂きたいです。よろしくお願いします。
lang
1 2 3import twitter4j.FilterQuery; 4import twitter4j.Query; 5import twitter4j.Status; 6import twitter4j.StatusAdapter; 7import twitter4j.TwitterStream; 8import twitter4j.TwitterStreamFactory; 9import twitter4j.conf.Configuration; 10import twitter4j.conf.ConfigurationBuilder; 11 12 13import java.util.StringTokenizer; 14 15public class Stream { 16 17 18 public static void main(String[] args) throws IOException { 19 // 認証キーを設定 20 ConfigurationBuilder builder = new ConfigurationBuilder(); 21 builder.setOAuthConsumerKey("xxxxxxxxxxxx"); 22 builder.setOAuthConsumerSecret("xxxxxxxxxxxx"); 23 builder.setOAuthAccessToken("xxxxxxxxxxxx"); 24 builder.setOAuthAccessTokenSecret("xxxxxxxxxxxx"); 25 26 // Configurationを作る 27 Configuration conf = builder.build(); 28 29 // TwitterStreamのインスタンス作成 30 TwitterStream twitterStream = new TwitterStreamFactory(conf).getInstance(); 31 32 // Listenerを登録 33 twitterStream.addListener(new Listener()); 34 35 FilterQuery query=new FilterQuery(); 36 37 String[] word={"衆議院"}; 38 39 query.track(word); 40 41 42 43 // 実行 44 twitterStream.filter(query); 45 } 46} 47 48/** Tweetを出力するだけのListener */ 49class Listener extends StatusAdapter { 50 // Tweetを受け取るたびにこのメソッドが呼び出される 51 public int count=0; 52 public void onStatus(Status status) { 53 count++; 54 System.out.println(count+ "."+ status.getCreatedAt()+ status.getText()); 55 56 } 57}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。