使用Nokogiri将div嵌套在div元素中

对于以下HTML,我想解析它并使用Nokogiri得到以下结果。

event_name = "folk concert 2" event_link = "http://www.douban.com/event/12761580/" event_date = "20th,11,2010" 

我知道doc.xpath('//div[@class="nof clearfix"]')可以获取每个div元素,但是我应该如何继续获取每个属性,例如event_name ,尤其是date

HTML

  

folk concert 2

Date:25th,11,2010

folk concert

Date:10th,11,2010

我不知道xpaths,我更喜欢使用css选择器,它们对我来说更有意义。 本教程可能对您有用。

 require 'rubygems' require 'nokogiri' require 'pp' Event = Struct.new :name , :link , :date doc = Nokogiri::HTML DATA events = doc.css("div.nof.clearfix").map do |eventnode| name = eventnode.at_css("h2 a").text.strip link = eventnode.at_css("h2 a")['href'] date = eventnode.at_css("div.pl.intro").text.strip Event.new name , link , date end pp events __END__ 

folk concert 2

Date: 25th,11,2010

folk concert

Date: 10th,11,2010

这输出:

 [#, #]