okkez です。 2009年10月9日6:20 T.Soejima <clev / ck2.so-net.ne.jp>: > るびきちさま、夜中に関わらずありがとうございます。 > > るびきちさまのサンプルは問題なく動作したのですが > 私の目的のサイトからはnilになってしまいます。 > > ********************************* > require 'rubygems' > require 'open-uri' > require 'hpricot' > > doc = Hpricot(open("http://finance.yahoo.com/q?s=EURJPY=X")) > p doc.search("span#yfs_l10_eurjpy=x") #=> #<Hpricot::Elements[]> > ********************************** > > という感じでオブジェクトが空になってしまいます。 > idが間違ってるのかと思い、何回もページのソースを確認したりしたの > ですが、どうも間違いが見当たらなくて困惑しております。 > > この2行のコードの中に何か間違いはあるでしょうか? > 恐縮ですがご教示いただけると幸いです。 > おそらくコードは間違ってませんが、html が間違ってます。 http://www.w3.org/TR/REC-html40/types.html#type-name によると id, name に使用できるのは /\A[a-zA-Z][a-zA-Z0-9\-_:.]*/ です。 "=" や "^" は id には使えません。 nokogiri でも軽く試して見ましたが、search メソッド呼び出し時に id に "=" が 入っていると Nokogiri::CSS::SyntaxError になりました。 id を使わない方法で検索条件を指定すると問題なく動きました。 -- okkez okkez000 / gmail.com