我正在尝试将这段代码从scrubyt 转换为nokogiri,并且一直试图将我的结果写入哈希或xml。在 scrubyt 中,它如下所示:
require 'rubygems'
require 'scrubyt'
result_data = Scrubyt::Extractor.define do
fetch "http://www.amazon.com/gp/offer-listing/0061673730"
results "//div[@class='resultsset']" do
item "//tbody/tr" do
condition "//div[@class = 'Condition']"
price "//span[@class = 'price']"
shipping "//span[@class = 'price_shipping']"
end
end
end
@description = result_data.to_xml
return @description
end
使用 nokogiri 我可以解析出我想要的信息,但似乎没有一种快速的方法来返回散列或 xml 文档中的项目。这就是我在 nokogiri 所拥有的一切。
require 'rubygems'
require 'nokogiri'
require 'open-uri'
doc = Nokogiri::HTML(open('http://www.amazon.com/gp/offer-listing/0061673730'))
doc.css('div.condition, span.price, span.price_shipping ').each do |item|
puts item.content
end
如何将项目信息返回到 xml 或散列?