こんな感じに書いて動かしているところです.
agent = WWW::Mechanize.new {|a| a.log=Logger.new(‘access.log’)}
while # どんどんデータを集める!
begin
page = agent.get(url)
rescue Timeout::Error
puts “ caught Timeout::Error !”
retry # タイムアウトしちゃってもあきらめない!
rescue WWW::Mechanize::ResponseCodeError => e
case e.response_code
when “404”
puts “ caught Net::HTTPNotFound !”
next # ページが見付からないときは次へ
when “502”
puts “ caught Net::HTTPBadGateway !”
retry # 上手くアクセスできないときはもう1回!
else
puts “ caught Excepcion !” + e.response_code
retry
end
end
end