今日も元気にテクニカル

技術情報書きたいけど本ブログに書きたくないからこんな名前になりました。

2009年Apple StoreのLucky Bag(福袋)の入荷有無を判定するスクリプト

require 'mechanize'
require 'kconv'

url = 'http://store.apple.com/jp/browse/home/specialdeals/luckybag'

agent = WWW::Mechanize.new
page = agent.get(url)

while /在庫切れ/ =~ page.body.tosjis
  puts Time.now.to_s + " 在庫切れです"
  sleep 60
  agent = WWW::Mechanize.new
  page = agent.get(url)
end

puts "入荷しました!"

exit

ちなみにこのスクリプトには致命的な欠陥があり、このままコピペしても正しく判定がされないようになっている。どこが間違いかは親切なブックマーカーが指摘してくれるかもしれない。

プログラミング初心者のid:takerunba氏もボットを作ったらしいが、ちょっとプログラムの知識があればPCの前に張り付いてブラウザの更新ボタン連打せずともAppleの福袋を買えたりするわけだ。元々のIT知識レベルにもよるが、はてな記法を使ってはてダをかけるくらい(世間から見ると)レベルが高い人となら、こんなプログラムは小説1冊読み終わるくらいの時間で書けると思う。