nokogiri について疑問があります。ページから HTML 要素を取得し、それぞれの xpath を取得する必要があります。問題は、ノコギリのやり方がわからないことです。さまざまな Web サイトからいくつかのページを解析する必要があるため、HTML コードはランダムです。
3008 次
2 に答える
5
ノードを検索する方法を尋ねる場合は、次のように CSS または XPath 式を使用できます。
require 'rubygems'
require 'nokogiri'
require 'open-uri'
doc = Nokogiri::HTML(open("http://slashdot.com/"))
node_found_by_css = doc.css("h1").first
node_found_by_xpath = doc.xpath("/html/body//h1").first
ノードを見つけたら、その正規の XPath 式を取得する方法を尋ねている場合は、次のNode#path
ように使用できます。
puts node_found_by_css.path # => "/html/body/div[3]/div[1]/div[1]/h1"
于 2009-06-03T02:42:24.483 に答える
0
ページ内の各 HTML 要素の XPath を取得する方法を知りたい場合は、次の方法が役に立ちます。これにより、ページが開いて解析され、各要素の XPath が出力されます。
require 'rubygems'
require 'nokogiri'
require 'open-uri'
doc = Nokogiri::HTML(open("http://slashdot.com/"))
doc.traverse {|node| puts node.path }
于 2010-04-03T13:52:41.503 に答える