如何使用mechanize(ruby gem)解析这个html页面*小型修正案*



在页面上,我有以下HTML源代码:

<div class="date">date1</div>
<div class="company"><div class="time">time1</div>
<a href="company_link1">company_name1</a></div>
<div class="company"><div class="time">time2</div>
<a href="company_link2">company_name2</a></div>
<div class="date">date2</div>
<div class="company"><div class="time">time3</div>
<a href="company_link3">company_name3</a></div>
... etc. 

我需要在最后阶段接收以下阵列:

array=[[日期,时间1,公司名称1,公司链接1],[日期,时间2,公司名称2,公司链接2],[日期2,时间3,公司名称3,公司链接3],…]

问题是div"class=company"没有日期,所以我需要解析正确的日期,并将每个日期添加到所有项目中(时间、公司名称、公司链接)。

非常感谢你的帮助,我是Ruby的新手。

PS:我需要使用mechanize,因为我的页面只能通过登录来检索。

嗯,您的date2div没有正确关闭,但可能类似于:

doc.css('.company').map{|x| [x.at('./preceding-sibling::div[@class="date"][1]').text, x.at('.time').text, x.at('a').text, x.at('a')[:href]]}

相关内容

  • 没有找到相关文章