今、Playframework2でTwitterアプリを作っています。
ですが、最初にTwitterの準備をしなければならないことがわかりました。
JavaでTwitterを操作するのであれば・・・。以前から名前だけは知っていたTwitter4jを使うことにしました。
ですが、TwitterのAPIを操作するにはTwitter上からOAuthの設定などが必要ということがわかりました。
登録作業をしてみたいと思います。
Twitterにアプリケーションの登録
TwitterのAPIを外部から操作することためにアプリケーションの登録を行います。
まず、ツイッターの技術サイトを開きます。
https://dev.twitter.com/
ちなみに、ご自身のアカウントでTwitterにログインしておいてください。
とりあえずトップページを開くと、右上に自分のアイコンが表示されるので、これをクリックします。
すると、My applicationsというリンクが表示されるので、それをクリックします。
My applicationsのページでCreate new applicationsをクリックします。
必須項目を入力します。入力完了したら、画面の枠外ですが、かなり難易度の高いCAPTCHAがあるので、これを頑張って入力します。今回の作業で一番ハードルが高いかもしれません。
My applicationsのページを開くと、登録したアプリケーションが表示されています。
TwitterのConsumer keyとsecretの取得
上記手順で作成したアプリケーションのページを開くと、お目当てのConsumer keyとsecretが表示されております。メモメモします。
下のキャプチャでいうと、ベタ塗りして隠してある部分です。
上記キャプチャでは切れていますが、下の方にCreate New My Access Tokenみたいなボタンがあるので、これもクリックしておきAccess Tokenも作成しておきます。
以上で、Twitter上での作業は終わりです。
次に、Twitter4jを使ってタイムラインを取得してみます。
Twitter4jでタイムラインを取得して表示してみる
僕はmavenで構成管理していないので、Twitter4jをダウンロードして、中に含まれるjarファイルにクラスパスを通します。
僕の場合は、twitter4j-core.jarにクラスパスを通しました。
で、以下の様なサンプルプログラムを記述して実行します。
[java]
@Test
public void test() throws Exception {
final String TWITTER_CONSUMER_KEY = "取得したコードを入力";
final String TWITTER_CONSUMER_SECRET = "取得したコードを入力";
final String TWITTER_ACCESS_TOKEN = "取得したコードを入力";
final String TWITTER_ACCESS_TOKEN_SECRET = "取得したコードを入力";
// アクセストークンの設定
AccessToken token = new AccessToken(TWITTER_ACCESS_TOKEN, TWITTER_ACCESS_TOKEN_SECRET);
Twitter twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer(TWITTER_CONSUMER_KEY, TWITTER_CONSUMER_SECRET);
twitter.setOAuthAccessToken(token);
User user = twitter.verifyCredentials();
// 表示してみる。
List<Status> list_status = twitter.getHomeTimeline();
System.out.println("自分の名前:" + user.getScreenName());
System.out.println("概要 :" + user.getDescription());
for (Status status : list_status) {
System.out.println("ツイート:" + status.getText());
}
}
[/java]
実行してtwitter名と、ツイートが表示されれば完了です。