『Google App Engine経由ならTwitterのタイムライン等が取得し放題…というわけでもない? - 風柳メモ』の続きですが…あの後、GAEからHTTP GETを自分が管理しているサーバ宛に送信し、受信したサーバ側にてSource IP Addressを調べてみたところ、どうも一定っぽい(少なくともころころ変わるわけではない)ので*1……GAEのIPアドレスがTwitterのホワイトリストに登録されていない、という可能性より、TwitterのRateLimitの運用において、文書外の制限がかかっている可能性の方が高いかなぁ、と思えてきました*2。
実験
user_timeline(/statuses/user_timeline.json)を200件ずつ(count=200)、page=1〜16を指定して並列取得するようなテストです(認証はなし)。
- 『Limit:*/* (next reset:...)』となっているのは/account/rate_limit_status.jsonで取得した結果
- 『Page *(level=*)』となっている部分のlevelは、「0:正常(20000制限)、1:150制限、2:エラー応答(JSON有)、3:エラー応答(JSON無)、10〜:GAE上の異常もしくはバグ」
- 各Responseの[result]後に出力される『Limit:...』は、そのpageのuser_timelineのResponse直後に取得したもの。
結局…
よくわかりませんね(苦笑)。
単位時間あたりの要求数とか、いろいろ条件があるんでしょうかね…?