From: "T.Soejima" Date: 2009-10-09T06:20:44+09:00 Subject: [ruby-list:46443] Re: Hpricot#search の使い方 るびきちさま、夜中に関わらずありがとうございます。 るびきちさまのサンプルは問題なく動作したのですが 私の目的のサイトからは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") #=> # ********************************** という感じでオブジェクトが空になってしまいます。 idが間違ってるのかと思い、何回もページのソースを確認したりしたの ですが、どうも間違いが見当たらなくて困惑しております。 この2行のコードの中に何か間違いはあるでしょうか? 恐縮ですがご教示いただけると幸いです。 > #!/usr/local/bin/ruby187 > # -*- coding: utf-8 -*- > require 'hpricot' > doc = Hpricot(DATA) # __END__以下の内容を読み込む > # id="abc_999"なspanすべて > doc.search("span#abc_999") > # => # "huga" }]> > # id="abc_999"な最初のspan > doc.at("span#abc_999") > # => {elem "huga" } > # 内容がhugaな最初のspan > doc.search("span").detect {|e| e.inner_text == 'huga' } > # => {elem "huga" } > > __END__ > > hoge > huga > > > > # HTMLパーサはNokogiriを使うのが主流になるでしょう。Ruby 1.9にも対応していますし。 > > -- > rubikitch > Blog: http://d.hatena.ne.jp/rubikitch/ > Site: http://www.rubyist.net/~rubikitch/ > Twit: http://twitter.com/rubikitch/ > 『Ruby逆引きハンドブック』 http://d.hatena.ne.jp/rubikitch/20090525/rubybook > > >