PHPでTwitterを使う方法を簡単に。
PEARのServices_Twitter というのがあるけど、
何故かうまく動かないのでリファレンス を参考に、
HTTP_Requestを利用して。
まず注意事項を。
TwitterAPIは利用制限があって、
使う機能によってマチマチのようだけど、
1時間に150回とかが上限。
利用制限がかけられる対象は、
IPもしくはアカウント。
アカウントはBasic認証またはOAuth認証に対応。
という感じです。
では、実際のサンプルコードをば。
※指定ユーザのタイムラインを表示する例
こんな感じです。
後は$xmlに格納された配列で遊んでください(笑)
ちなみに、screen_nameというのは可変で、
ユーザが設定変えちゃうと情報取得できなくなる。
ので、常時トレースしたいユーザに対しては、
users/showのAPIとかで、ユーザID(idパラメータ)を
取得しておくことを推奨。
ユーザIDはアカウントに対して不変のパラメータで、
上記パラメータのscreen_nameをidに置き換えてやれば
同様にAPIを利用することが出来る。
まだ一通り触ったわけじゃないけど、
利用制限がきついので、
うまくキャッシュ化させて利用するべきですな。
PEARのServices_Twitter というのがあるけど、
何故かうまく動かないのでリファレンス を参考に、
HTTP_Requestを利用して。
まず注意事項を。
TwitterAPIは利用制限があって、
使う機能によってマチマチのようだけど、
1時間に150回とかが上限。
利用制限がかけられる対象は、
IPもしくはアカウント。
アカウントはBasic認証またはOAuth認証に対応。
という感じです。
では、実際のサンプルコードをば。
※指定ユーザのタイムラインを表示する例
<?php
requir_once("HTTP/Request.php");
// Basic認証用Twitterアカウント
$basic_usr = USER_NAME;
$basic_pwd = USER_PWD;
// タイムラインを確認したいユーザ
$screen_name = SCREEN_NAME;
$url = "http://twitter.com/statuses/user_timeline.xml?screen_name=" . $screen_name;
// $url = "http://twitter.com/statuses/" . $screen_name . ".xml"; // どっちでも
// HTTP_Requestオブジェクト
$http = new HTTP_Request($url);
// Basic認証
$http->setBasicAuth($basic_usr, $basic_pwd);
// リクエスト
$result = $http->sendRequest();
$response = $http->getResponseBody();
$xml = simplexml_load_string($response);
var_dump($xml);
?>
こんな感じです。
後は$xmlに格納された配列で遊んでください(笑)
ちなみに、screen_nameというのは可変で、
ユーザが設定変えちゃうと情報取得できなくなる。
ので、常時トレースしたいユーザに対しては、
users/showのAPIとかで、ユーザID(idパラメータ)を
取得しておくことを推奨。
ユーザIDはアカウントに対して不変のパラメータで、
上記パラメータのscreen_nameをidに置き換えてやれば
同様にAPIを利用することが出来る。
まだ一通り触ったわけじゃないけど、
利用制限がきついので、
うまくキャッシュ化させて利用するべきですな。