(1) TwitterのAPIライブラリ(Twitter4j)でフォローを行う方法
(1-1) 構文
(1-2) サンプルプログラム
(1) TwitterのAPIライブラリ(Twitter4j)でフォローを行う方法
この記事ではTwitter4jライブラリを使って、アカウントのフォローを行うプログラムを作成します。これを応用していけば、複数のアカウントを一括でフォローする事も可能になります。
(1-1) 構文
アカウントのフォローは「twitter.createFriendship()」メソッドで行う事ができます(twitterはTwitterクラスのインスタンスです。
クラス | |
メソッド名 | createFriendship |
戻り値の型 | User |
説明 | 認証されたユーザーが指定したID(またはユーザID)のアカウントをフォローします。 |
(1-2) サンプルプログラム
(サンプルプログラム)
import twitter4j.IDs; import twitter4j.Twitter; import twitter4j.TwitterException; import twitter4j.TwitterFactory; import twitter4j.User; import twitter4j.conf.ConfigurationBuilder; public class CreateFriendShip { public static void main(String[] args) { //#### 【事前準備】キー認証など //# インスタンス生成 ConfigurationBuilder cb = new ConfigurationBuilder(); //# キー情報の設定 //# 「.setOAuthXXXX」の引数にはご自身の開発者アカウントのIDを代入します cb.setDebugEnabled(true) .setOAuthConsumerKey("[ご自身のOAuthConsumerKey]") .setOAuthConsumerSecret("[ご自身のOAuthConsumerSecret]") .setOAuthAccessToken("[ご自身のOAuthAccessToken]") .setOAuthAccessTokenSecret("[ご自身のOAuthAccessTokenSecret]"); //# フォロー対象を保持する配列 //# (配列のサイズはフォローしたい数に合わせて変更) String follow_target[] = {"[フォロー対象ユーザ名]","[フォロー対象ユーザ名]","[フォロー対象ユーザ名]"}; try { //#### (事前準備)各種Twitterインスタンスの生成 //# ファクトリクラスのインスタンス生成 TwitterFactory tf = new TwitterFactory(cb.build()); //# Twitterクラスのインスタンス生成 Twitter twitter = tf.getInstance(); //#### ①フォローターゲットの対象を格納するオブジェクト //#### ※フォローしたユーザの情報(createFriendshipの戻り値User)を格納用 User user_target; System.out.println("#### フォロー処理開始 ####"); //#### ②フォロー対象ユーザをループし、それぞれフォロー for(int i=0; i<follow_target.length; i++) { //# フォローの実施 user_target = twitter.createFriendship(follow_target[i]); //# フォローしたユーザー名の表示 System.out.println("フォロー完了:"+user_target.getName()); } System.out.println("#### フォロー処理完了 ####"); System.exit(0); } catch (TwitterException te) { te.printStackTrace(); System.out.println("#### フォロに失敗しました: " + te.getMessage()); System.exit(-1); } } }
(図121)実行結果例
このサンプルプログラムを実用的なレベルに持って行くには「String follow_target[] = {}」内に入れる値を機械的に出力する前段のプログラムがあると、効果を発揮出来るかなと感じています(数件なら良いですが、数百単位だと手で1つ1つ書くのは厳しい・・)。こちらについてはまた別途ご紹介できたらと思います(⇒★準備中)