Hpricot::ParseErrorが出たときは?
Hpricotを便利に使っていますが、ページを読んだときにエラーが出るようになってしまいました。rescueはかけてあるのですが、例外に飛ばずにドカンと落ちてしまいます。
現象
c:/ruby/lib/ruby/gems/1.8/gems/hpricot-0.6-mswin32/lib/hpricot/parse.rb:51: in `scan': ran out of buffer space on element <input>, starting on line 11. (Hpricot::ParseError)
scanするときの bufferが足りないといってるようです。
対処
Hpricot.buffer_size = 2621444 @doc = Hpricot(open(uri).read)
ググると、ここ(→Why The Lucky Stiff • Technology Blog with Tech News!)に対処法が書いてありました。Hpricot.buffer_sizeを指定するだけで OKなようです。