三村bot久々の修正

2012/06/17

この金土日と滋賀に開発合宿に行ってました。その成果その2です。その1はこちら

三村bot(@tukkomimura)を久々に修正。

成果その2は三村bot。やりたかったアプリ開発に行き詰まったので、気分転換に修正してみました。

三村botは、フォロワ全員につっこむようにしているのですが、気がつくとフォロワーが5000しか取得できていませんでした。5000以上取得するにはcursor_idを使った処理で、次々取得しないとですね。

その部分のコードはこちら

$cursor = -1;

libxml_use_internal_errors(true);

while($cursor != 0){
	// フォロワー一覧取得 
	$req = $this->to->OAuthRequest("http://api.twitter.com/1/followers/ids.xml","GET",array("cursor"=>$cursor));


	// XML文字列をオブジェクトに代入する
	$followers = simplexml_load_string($req);
	if($followers){
		if(isset($followers->error) && $followers->error != ""){
			print "##API ERRRO## ".$followers->error."\n";
		}else{
			$i = 0;
			foreach($followers->ids->id as $follower_id){
				$follower_id = (int)(string)$follower_id;
				if(!is_numeric($follower_id)){
					continue;
				}
				// DB登録処理
				// (省略)
			}
			$cursor = (string)$followers->next_cursor;
		}
	}else{
		echo "Failed loading XML\n";
		foreach(libxml_get_errors() as $error) {
			echo "\t", $error->message;
		}
	}
}

これで14000を超えるフォロワー全員が対象になったはず!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です