我正在用 Nokogiri 写一个刮刀,我想刮一个大的 HTML 文件。
目前,我正在刮一张大桌子;这是一个小片段:
<table id="rptBidTypes__ctl0_dgResults">
<tr>
<td align="left">S24327</td>
<td>
Airfield Lighting
<div>
<div>
<table cellpadding="5px" border="2" cellspacing="1px" width="100%" bgcolor=
"black">
<tr>
<td bgcolor="white">Abstract:<br />
This project is for the purchase and delivery, of various airfield
lighting, for a period of 36 months, with two optional 1 year renewals,
in accordance with the specifications, terms and conditions specified in
the solicitation.</td>
</tr>
</table>
</div>
</div>
</td>
</tr>
</table>
这是我用来抓取的 Ruby 代码:
document = doc.search("table#rptBidTypes__ctl0_dgResults tr")
document[1..-1].each do |v|
cells = v.search 'td'
if cells.inner_html.length > 0
data = {
number: cells[0].text,
}
end
ScraperWiki::save_sqlite(['number'], data)
end
不幸的是,这对我不起作用。我只想提取S24327
,但我正在获取每个表格单元格的内容。我如何只提取第一个的内容td
?
请记住,在此表格下,有许多表格行遵循相同的格式。