PHPでTwitterの自動フォロー/リムーブする(OAuth対応版)

|
Clip to Evernote PHPでTwitterの自動フォロー/リムーブする(OAuth対応版)

別になんら難しいことはないんだけど,TwitterのBOTを作って自動フォローやリムーブをしたくなることってあるじゃないですか?特に,人気BOTになってくると,いちいちフォローされましたメールからフォローするなんて,面倒くさいじゃないですか?そうなると,自動でやりたいですよね.ということで,自動フォロー/リムーブするPHPなプログラムを書いたよ.もちろんOAuth対応版だよ.

<?php
$ids = 'yourscreenname';

$friends = array();
$followers = array();
$list_follow = array();
$list_remove = array();

//APIからfriends取得
$url = "http://api.twitter.com/1/friends/ids/$ids.json?cursor=-1";
$res = twitter_api($url);
$json = json_decode($res);
//ユーザIDを抽出して配列に
foreach ($json->ids as $u) {
$friends[] = $u;
}

//APIからfollowers取得
$url = "http://api.twitter.com/1/followers/ids/$ids.json?cursor=-1";
$res = twitter_api($url);
$json = json_decode($res);
//ユーザIDを抽出して配列に
foreach ($json->ids as $u) {
$followers[] = $u;
}

//followするリスト作成
$list_follow = array_diff($followers, $friends);
//removeするリスト作成
$list_remove = array_diff($friends, $followers);

//followする
foreach($list_follow as $f) {
$url = "http://api.twitter.com/1/friendships/create/$f.json";
$res = twitter_api($url, OAUTH_HTTP_METHOD_POST);
}

//removeする
foreach($list_remove as $f) {
$url = "http://api.twitter.com/1/friendships/destroy/$f.json";
$res = twitter_api($url, OAUTH_HTTP_METHOD_POST);
}


//twitter api
function twitter_api($url, $method=OAUTH_HTTP_METHOD_GET, $param=null) {
$consumerKey = 'consumerKey';
$consumerSecret = 'consumerSecret';
$oauthToken = 'oauthToken';
$oauthTokenSecret = 'oauthTokenSecret';

try {
$oauth = new OAuth($consumerKey, $consumerSecret,
OAUTH_SIG_METHOD_HMACSHA1, OAUTH_AUTH_TYPE_URI);
$oauth->setToken($oauthToken, $oauthTokenSecret);
$oauth->fetch($url, $param, $method);
$response = $oauth->getLastResponse();
return $response;
} catch (OAuthException $e) {
return $e;
}
}
?>

トークンは自分のものに置き換えてね!どうせBOTだろうからdevelopersあたりから取れるよね.作り方が雑なんで,適当に改変して利用するといいんじゃないかな.

プロフィール

e-m@il @ddress