適当に間隔を空けたい、オープンマインドじゃなくて。

 ごめん、ネタっぽい記事タイトルで。や、記事自体もネタに近いさ。

 先日「1秒に1回以下にしてね」という某ウェブサービスを利用していて、この規約自体は存じ上げていたのだけどまさかそんなにアクセスがあるとは思わなくって調子こいて叩いていたら、503とかちょいちょい返される様になってしまって困った。某中国あたりの検索エンジン様は、クロールしてくれるのは大変有り難いのですけど「ちょいとキツ過ぎ」とつぶやいてやりたい。そんな気持ちで一杯です。
 Google様のクロールもそれなりにエゲつないですけど、Google様にはとてもじゃないけど逆らえないので何とも思わないと思う事にしてます。そんないやらしさも一杯です。

 そんな訳で、フェッチする前に一秒間処理を止めればいいかなと思ったのだけど、同時に開発版が動いていたりする場合もあるし、両方からほぼ同時にフェッチを投げてしまった場合とかは単に一秒スライドするだけだとあまり意味がないかなと思ったりもしたので、1〜3秒の間でランダムに処理を止める事にしてみました。

import time, random

time.sleep(3*random.uniform(0.34, 1))

 こんな感じのをはさんで。これ以上ないってくらいにベタ。

 でもまぁ、未だにちょいちょい503とか返ってきている様で、あまり意味が無かったかも。あはー