あけましておめでとうございます。
年末はずっとバイトで、正月は家でだらだらしてました。
今年もよろしくお願いします。
さて本題。
また、Twitter ですが、まあいいでしょう。
どうも、Twitter API の Rate limitting が一部緩和されたよう? です。
(公式情報は、全くもって未確認。勝手にそう思ってるだけかもしれない。)
普段から、API 制限かかってる人には、朗報?
ただし、条件付です。
今までは、Twitter REST API の Rate limit (いわゆる API 制限) は、150 回でした。
といっても、Rate Limit は User Limit と IP Limit の2つがあって、各 150 回の制限があります。
認証していれば User Limit が、認証しないでいると IP Limit から回数が引かれる仕組みになっています。
なので、普通のライブラリで、普通のクライアントを使っているなら、User Limit を食っていくだけだと思います。
IP Limit は、bot やってる人とか、Web サービスやってる人にしかあまり知られていない?
さらに言えば、実は GET で取得するものにしか Rate limit は適用されないので、tweet しても、API の回数が減ることはなかったりします。
うまくやれば、Protected じゃない User Timeline ぐらいであれば、User と IP をどちらも使い切って、300 回ぐらい投げられるようになってました。
この先、手探りで探ってみた結果なので、あまり信頼性ありません。
しかし、今回 User Limit が制限つきで 450 回まで叩けるように、なった模様。
その条件というのは
- OAuth で認証している
- http://api.twitter.com/1/xxx/hogehoge.type でアクセスしている。
(!= http://twitter.com/xxx/hogehoge.type)
っぽいです。
rate_limit_status を見たときに表示される回数は 150 回のままです...
ただし、450 350 回になる条件を満たしたときに、Twitter からのレスポンスについてくる HTTP Header についてくる
- X-RateLimit-Limit: xxx
- X-RateLimit-Remaining: xxx
は、450 350 回になっています。
実際に、150 回を超える API を叩いてみましたが、確かに使えるようです。
ちなみに、Basic 認証でアクセスしたときや、twitter.com/xxx/ から API を叩いたときは、また別に 150 回カウントされてるようです。
なんだか、よくわからない仕様です。
しかし、なかなか意味不明なので、突然元に戻ってしまう可能性も考えられますね。
そのあたりは、注意が必要であります。
僕の作ったライブラリは、一部のメソッドのみ、この規制緩和に対応してます。
一応、apiwiki を元にライブラリつくったので、アクセスしてるアドレスが apiwiki に載ってるとおりになってます。
なので、ばらばらなんです。
home_timeline とか、比較的新しく追加されたメソッドは、api.twitter.com からアクセスするようになってるので...
そのあたりも修正しようかと思ってます。
近々、バージョンアップさせようかと思うので...
あ、クライアントのほうも、バグつぶしやら、機能追加やら、暇なときにいろいろやってたりするので、たぶんそのうちバージョンあがります...
追記: 一度 450 回使えるようになったものの、すぐに 150 回に戻り、350 回に落ち着いたようです。Basic 認証はそのうち消える模様なので、OAuth に乗り換えたほうが得ですね。


コメントする