Twitterのbotを作る #5「twitterOAuthによる情報収集(最大数超え)」

Pocket
LINEで送る
GREE にシェア
LinkedIn にシェア

twitterOAuthライブラリを使って、Twitterサーバーから一度に取得できるユーザーアカウント数はどうやら5000が上限のようです。

なので、5000異常のフォロワーやフレンドがいる場合は、登録順で5000までしか取得ができないので、今回は全ての一覧を取得する方法を書いておきます。

Twitterの上限値ルール

ちなみに、現時点でtwitterのルールとして、2000までの友達は問題なく作れるようになっているのですが、それ以上については、ある一定のルールで増えていくようです。

正確にはわかりませんが、フォロワーが増えていく事に比例して2000という上限を上振れさせているように見えますね。

やはりフォローしてもらえるアカウント作りが必要という事です。

5000の上限を超えて取得するには

通常

全て取得

解説

返り値を受け取った「$followers」の中に「next_cursor」という値が存在する。
5000件に満たないリストの場合は、ここの値が「0」になっています。

しかし、5000件を超える場合は、次のリスト取得の場合のカーソル位置という値が入ってきます。

なので、「next_cursor」の値が0でなければ(trueだったら)、while文で、$array_dataの配列にどんどん追記して貯めていく仕様にしました。
※数万単位の場合はどのくらい遅延するか今のところわかりません。

ソースコード

twitter_getOver.php

確認

確かに5000以上のデータ取得ができています。
とりあえず、今後は全てこの記述で行きましょう。

Leave a Reply

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