Java

JavaからTwitter4jを使ってタイムラインを表示してみる

投稿日:2013/05/22 更新日:

今、Playframework2でTwitterアプリを作っています。
ですが、最初にTwitterの準備をしなければならないことがわかりました。

JavaでTwitterを操作するのであれば・・・。以前から名前だけは知っていたTwitter4jを使うことにしました。
ですが、TwitterのAPIを操作するにはTwitter上からOAuthの設定などが必要ということがわかりました。
登録作業をしてみたいと思います。

Twitterにアプリケーションの登録

TwitterのAPIを外部から操作することためにアプリケーションの登録を行います。
まず、ツイッターの技術サイトを開きます。
https://dev.twitter.com/

ちなみに、ご自身のアカウントでTwitterにログインしておいてください。
とりあえずトップページを開くと、右上に自分のアイコンが表示されるので、これをクリックします。
すると、My applicationsというリンクが表示されるので、それをクリックします。
Twitter Developers-1

My applicationsのページでCreate new applicationsをクリックします。
My applications | Twitter Developers

必須項目を入力します。入力完了したら、画面の枠外ですが、かなり難易度の高いCAPTCHAがあるので、これを頑張って入力します。今回の作業で一番ハードルが高いかもしれません。
Create an application | Twitter Developers

My applicationsのページを開くと、登録したアプリケーションが表示されています。
My applications | Twitter Developers-1

TwitterのConsumer keyとsecretの取得

上記手順で作成したアプリケーションのページを開くと、お目当てのConsumer keyとsecretが表示されております。メモメモします。
下のキャプチャでいうと、ベタ塗りして隠してある部分です。
beeete2-test | Twitter Developers

上記キャプチャでは切れていますが、下の方にCreate New My Access Tokenみたいなボタンがあるので、これもクリックしておきAccess Tokenも作成しておきます。

以上で、Twitter上での作業は終わりです。
次に、Twitter4jを使ってタイムラインを取得してみます。

Twitter4jでタイムラインを取得して表示してみる

僕はmavenで構成管理していないので、Twitter4jをダウンロードして、中に含まれるjarファイルにクラスパスを通します。
僕の場合は、twitter4j-core.jarにクラスパスを通しました。
で、以下の様なサンプルプログラムを記述して実行します。

	@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());
		}
	}

実行してtwitter名と、ツイートが表示されれば完了です。

-Java
-

執筆者:


  1. […] 以下を参考に、Twitter4jで実行。警告がでるけど、名前だけは出力に成功する。 https://www.beeete2.com/blog/?p=217 警告は、ログ出力に関するものらしい。 https://qiita.com/toolate32/items/538f3a99d23a7a1f29b […]

comment

メールアドレスが公開されることはありません。

関連記事

SpringMVCを使ってみることにしました。

Tomcat3時代のころからJavaでウェブアプリケーションを使っておりますが、フレームワークはあんまり使ったことがありません。 業界標準?だったStruts1も試しに使ってみてxml書くのと存在意味 …

no image

WindowsのAntでJDKのバージョンを変更する方法

先日のMavenでコンパイル時のJDKバージョンを指定する方法のAnt版っていう感じです。 Mavenは先日の記事のように、プラグインで用意されているみたいなのですがAntには無さそう。 という訳で、 …

Maven2でDomaを使ったアプリケーションをコンパイルする方法

JavaのO/Rマッパーの金字塔はなんですかね。 自分で言うのもなんですが、僕は完全にO/Rマッパーの移行に失敗したので、この辺りは疎いのですが・・・。 そんな僕はDomaというO/Rマッパーを使って …

Spring MVCのコントローラーで任意のステータスコードを返す方法

Spring MVCにかぎらずなんですが、URIリソースが見つからない場合は、適切なステータスコードを返してブラウザにお知らせする必要があると思います。 例えば、マッピングには一致したが指定された条件 …

Tomcatのメモリ使用量をjconsoleを使って監視する方法

まれに、Tomcatのメモリ使用量をリアルタイムで知りたいということが無いでしょうか。 管理人はたまにあります・・・。 JDK5か6以降jconsoleという便利なツールが追加されまして、それを使って …