Mechanize その2

はてなにログインしてみる
ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-cygwin]

require 'rubygems'
require 'mechanize'
require 'kconv'

user_id = "xxxxxxxxxx"
pass    = "xxxxxxxxxx"

agent = WWW::Mechanize.new
login_page  = agent.get('https://www.hatena.ne.jp/login')
login_form  = login_page.forms.first
login_form["name"]     = user_id
login_form["password"] = pass
res = agent.submit(login_form)
if res.body =~ /error-message"\>.*\(.*?)\<\/p\>.*\<\/div\>/m
  puts $1.tosjis
end
if res.body =~/progress-message"\>.*\\(.*)\<\/span\>/m
  puts $1.tosjis
end

実行結果

成功時
   xxxxxxxxxx でログイン中です
失敗時
   ユーザー名またはパスワードが違います