Mechanize

WWW::Mechanize(Rubyの)で一部のフォームが取れない問題

どうも,well-formedじゃないHTMLの場合に,フォームの一部を取れないみたい.例えば,以下のようなフォームがあるときにbarが取れない(WWW::Mechanize#page.forms.first.field('bar').nil? == trueになる). <p> <form> <input name="foo"> </p> <input name="bar"> 検索してみたけど情報が無い.みんな困って…

XPathおもしろ

最近,RubyのWWW::Mechanizeで遊んでいます. WWW::Mechanizeは内部的にHpricot(HTML文書スクレイパ)を使っており,WWW::Mechanize経由でHpricotにsearchメソッドなどを送れるわけですが,このときにXPath式を渡すことで,目的の部分のHTML要素を得ることが…