ネットでよく貼られてるベーシック認証によるStreamAPIはもう出来ないっぽい?
が、イチから認証すると面倒なので、tmhOAuthというライブラリを使う。やったね
<?php require_once("tmhOAuth.php"); //取得したデータの処理 function filter_callback($data, $length, $metrics){ $tweet = json_decode($data); if($tweet->user->lang === "ja"){ $screenName = $tweet->user->screen_name; $text = $tweet->text; echo '@' . $screenName . ' ' . $text . '<hr />'; } } $tmh = new tmhOauth(array( 'consumer_key' => '', 'consumer_secret' => '', 'token' => '', 'secret' => '' )); $paras = array( "track" => 'twitter' ); //$url = 'https://stream.twitter.com/1.1/statuses/sample.json'; $url = 'https://stream.twitter.com/1.1/statuses/filter.json'; $tmh->streaming_request("POST", $url , $paras, 'filter_callback');
制限として
- タイムアウトがあるっぽい?
- 一つのアカウントで同時接続は不可能。とのこと