FC2ブログ

スポンサーサイト

-------- --:--:-- --

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【Java】Twitter4jを使ってStreamingAPIを利用する

2011-10-19 01:02:46 Wed

Twitter Streaming API


メインメソッドで動作するコード。

// Configureationを生成するためのビルダーオブジェクトを生成
ConfigurationBuilder builder = new ConfigurationBuilder();

// コンシューマーキーとアクセスキーを設定
builder.setOAuthConsumerKey("consumer key");
builder.setOAuthConsumerSecret("consumer secret");
builder.setOAuthAccessToken("access token");
builder.setOAuthAccessTokenSecret("token secret");

// Configurationを生成
Configuration conf = builder.build();

// TwitterStreamを生成
TwitterStreamFactory factory = new TwitterStreamFactory(conf);
TwitterStream twitterStream = factory.getInstance();

// イベントを受け取るリスナーオブジェクトを設定
twitterStream.addListener(new UserStreamAdapter(){
@Override
public void onStatus(Status status) {
synchronized (lock) {
String screenname = status.getUser().getScreenName();
Long userId = status.getUser().getId();
String text = status.getText();
text = text.replace("\r", "");
text = text.replace("\n", "");
text = text.replace("\t", "");
Date createdAt = status.getCreatedAt();
String date = DateUtil.format(createdAt);
System.out.println(screenname + " : " + userId + " : " + text + " : " + date);
}
}
@Override
public void onException(Exception ex)
{
ex.printStackTrace();
}
});

// 取得をスタート
long[] list = {1L};
// FilterQuery query = new FilterQuery(list);
String[] track = {"android"};
FilterQuery query = new FilterQuery();
query.track(track);
// query.follow(list);
twitterStream.filter(query);
// twitterStream.user();
// twitterStream.sample();



上記の「取得をスタート」を変更するとsampleやuser、filterなどのAPIを呼び出すことができます。

特定の人のIDでツイートをfilterする場合。

// 取得をスタート
long[] list = {1L};
FilterQuery query = new FilterQuery(list);
twitterStream.filter(query);


特定のキーワードでツイートをfilterする場合。

// 取得をスタート
String[] track = {"android"};
FilterQuery query = new FilterQuery();
query.track(track);
twitterStream.filter(query);



OAuth認証されているユーザ自身のツイートをStreamingAPIを介してほぼリアルタイム取得する場合。

// 取得をスタート
twitterStream.user();




ランダムなツイートをほぼリアルタイムに取得する場合。

// 取得をスタート
twitterStream.sample();



スポンサーサイト

⇒comment

Secret

名言集
全記事(数)表示
全タイトルを表示
ブログ内検索
Loading
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。