我已成功使用ruby(1.8)和nokogiri的css解析来从网页中提取前面的数据。
但是我现在需要从一系列页面中提取一些数据,其中数据位于页面源代码中的“meta”标签中。
我需要的其中一条线如下:
<meta name="geo.position" content="35.667459;139.706256" />
我尝试过使用xpath put无法正确使用。
非常感谢任何有关所需语法的帮助。
由于
答案 0 :(得分:2)
这是CSS attribute selector的好例子。例如:
doc.css('meta[name="geo.position"]').each do |meta_tag|
puts meta_tag['content'] # => 35.667459;139.706256
end
等效的XPath表达式几乎完全相同:
doc.xpath('//meta[@name = "geo.position"]').each do |meta_tag|
puts meta_tag['content'] # => 35.667459;139.706256
end
答案 1 :(得分:1)
require 'nokogiri'
doc = Nokogiri::HTML('<meta name="geo.position" content="35.667459;139.706256" />')
doc.at('//meta[@name="geo.position"]')['content'] # => "35.667459;139.706256"