読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

Twitter4jで遊んでみた(特定ユーザーのツイート取得など)

<スポンサーリンク>

・Twitterで特定のキーワードの話題を検索するサンプル(Twitter4j)

package twitter.framework.util;

import java.util.List;

import twitter4j.Query;
import twitter4j.QueryResult;
import twitter4j.Tweet;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;

public class SearchSample {
	public static void main(String[] args) {
		Twitter twitter = new TwitterFactory().getInstance();
		try {
			QueryResult result = twitter.search(new Query("与沢翼"));
			System.out.print("検索結果を表示します:");
			List<Tweet> tweets = result.getTweets();
			System.out.println(tweets.size() + "件の検索結果があります。");
			for(Tweet tweet : tweets) {
				System.out.println("@" + tweet.getFromUser() + " - " +
					tweet.getText());
			}
			System.exit(0);
		} catch(TwitterException e) {
			e.printStackTrace();
			System.out.println("検索失敗!:" + e.getMessage());
			System.exit(-1);
		}
	}
}

結果

検索結果を表示します:15件の検索結果があります。
@XXXX - 『【井戸端会議】与沢翼さんのSuper Free Agent Style』
・・・

・Twitter4jでscreenname(@hogeみたいなやつのこと)から、ユーザーIDを取得するサンプル
ここではワロスbotのIDを表示してみる。

package twitter.framework.util;

import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.User;

public class GetUserId {
	
	public static void main(String[] args) {
		Twitter twitter = new TwitterFactory().getInstance();
		try {
			User user = twitter.showUser("@wwwww_BOT");
			System.out.println("ワロスbotのID:"+ user.getId());
		} catch (TwitterException e) {
			e.printStackTrace();
		}
	}
}

結果

ワロスbotのID:80872288


・ある特定ユーザーのツイートを取得するサンプル
ここではワロスbotのツイートを取得する。

package twitter.framework.util;

import java.util.List;

import twitter4j.Status;
import twitter4j.Tweet;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.User;

public class ShowTweetList {
	public static void main(String[] args) {
		Twitter twitter = new TwitterFactory().getInstance();
		try {
			User user = twitter.showUser("@wwwww_BOT");
			long id = user.getId();
			List tweetList = twitter.getUserTimeline(id);
			for (int i=0; i < tweetList.size(); i++) {
				Status tweet = (Status) tweetList.get(i);
				System.out.println("ツイート:"  + tweet.getText());
				System.out.println("------------------------------");
			}
		} catch (TwitterException e) {
			e.printStackTrace();
		}
		
	}
}

ちなみに、
Status tweet = (Status) tweetList.get(i)とかやらずに、
System.out.println(tweetList.get(i));
とかで表示させると、ワロスbotの運営元のURLとか出てくるよ!(→source=XXXXって出てくる。)

このサンプルの結果

ツイート:「あそこにベンツがとまっていますね」
「とまっていますね」
「あなたが煙草を吸わなければあれぐらい買えたんですよ」
「つまりあれはあなたのベンツなのですね」
「違います」
「あなたはベンツを買ってないのにそんな話をしたんですか」
「すいません」
「あなた煙草は?」
「すいません」
------------------------------
・・・

<参考書籍>

Twitter API ポケットリファレンス (POCKET REFERENCE)

Twitter API ポケットリファレンス (POCKET REFERENCE)