[ついったー部Friends登録ご自由]に掲載されているアカウントに、自動でフォロー登録するphpを構築しました。
家のPC内のVMwareにpearがインストールされていなかったので、pearをインストールしました。
yum install php-pear pear upgrade PEAR
その後下記のサイト参考に、Services_Twitterをインストールします。
http://labs.transrain.net/products/services_twitter/
まず、メッセージを送信すると思われるsetUpdate関数を使ってみました。
<?php require_once "Services/Twitter.php"; $user = 'ユーザー名'; $pass = 'パスワード'; $st =& new Services_Twitter($user, $pass); //発言 $st -> setUpdate('テスト'); ?>
でtwitterのアカウントcamelmasaが発言出来ました。
アプリケーション名、バージョン等も通知出来るようで下記の方法でも発言してみました。
<?php require_once "Services/Twitter.php"; $user = 'ユーザー名'; $pass = 'パスワード'; $st =& new Services_Twitter($user, $pass); //アプリケーションの名前を設定 $st->setAppName('camelmasa_sample'); //アプリケーションのバージョンの設定 $st->setAppVersion('1.0'); //発言 $st -> setUpdate('テスト2'); ?>
さて本題です。
[ついったー部Friends登録ご自由]の情報を取得する為httpで通信する必要があります。
ですので、pearのHTTP_Requestをインストールします。
pear install HTTP_Request
先程作成したプログラムと組み合わせます。
<?php require_once 'Services/Twitter.php'; require_once 'HTTP/Request.php'; $user = 'ユーザー名'; $pass = 'パスワード'; //ついったー部Friends登録ご自由にのサイトURL $url = 'http://twitter.g.hatena.ne.jp/keyword/Friends%e7%99%bb%e9%8c%b2%e3%81%94%e8%87%aa%e7%94%b1%e3%81%ab%20'; $request = &new HTTP_Request(); $request->setURL($url); $result = $request->sendRequest(); if (!PEAR::isError($result)) { //リンクから抽出する正規表現 preg_match_all('/<tr><td><a\shref="http:\/\/twitter.com\/([a-zA-Z0-9]+)"\starget="_blank">/',$request->getResponseBody(),$matches); $twitter_users = array_unique($matches[1]); $st =& new Services_Twitter($user, $pass); //アプリケーションの名前を設定 $st->setAppName('camelmasa_sample'); //アプリケーションのバージョンの設定 $st->setAppVersion('1.0'); foreach($twitter_users as $user){ //フォロー登録する $st -> addFriend($user); } } ?>
友人を登録する前にフォロー登録している人を取得して、照らし合わせる必要がありますね…。
今日はここまでです。
追記
camelmasaのtwitterです。
http://twitter.com/camelmasa
jsonデータの扱いをした事が無い…。
どうやるのだろうか…。
正規表現の部分がおかしいっぽい。
ハイフンとか入れ忘れた!
参照URL
http://twitter.com/
[PR]Spreeの情報を集めています。
ECを持ちたい方、仕事でECを使いたい方向けのコミュニティサイトです。
このサイトでは世界で最も使用されているECの1つであるSpreeについての情報を提供しています。
http://spreecommerce.jp/