Twitter Streaming API を gardenhose レベルで利用する

id:awakia に教えて貰いました。

Twitter Streaming API の sample を使うと、正確に確認したわけではありませんが、全発言の1/20を取得できます。やってみると分かりますが、この1/20というのは結構シビアで、全然自分の発言が拾われません。秘宝伝の高確での解除率が1/16.8だから、それより悪かったら引ける気がしませんよね。何でもないですすいませんでした。

余談ですが、全発言の1/20というのは、具体的には発言IDの下二桁が特定の数字である発言のみが拾えるということです。自分のところだと確認した限りでは04〜08でしたが、もしかしたら環境によって変わるかも知れません。まあ、100個中5個しか拾えないということですね。

そんなわけで、通常の sample はもの凄くショボイのですが、そのしょぼさをちょっとだけ改善できるのが gardenhose です。正確に計測していませんが、通常の sample の4倍くらい拾えているようです。拾われる確率が 1/5 だったらまだ頑張る気になりますね。

gardenhose を使うためには申請が必要になります。gardenhose の申請をするには、 Twitter にログインした状態で http://twitter.com/help/request_streaming にアクセスして必要事項を埋めて Submit するだけです。ちょっとすると gardenhose を使えるようになります。正確には sample を gardenhose レベルで使用可能になります。なので、 API のクライアントを変更する必要はありません。

ちなみにもう一個上のレベルの firehose を使うと全発言が取れるらしいですが、よっぽどのことがあっても使わせて貰えないそうなので諦めましょう。あと、もしかしたら将来的に申請方法が変わってしまうかも知れないので、そうなったら他のページをググってください。