我有这种html结构:
<table class="list">
<tbody>
<tr>
<td>
</td>
<td>
<a href="club.do?codeClub=01670001&millesime=2015"></a>
</td>
</tr>
</tbody>
</table>
我希望获得<td>
中包含<tr>
table
的{{1}}的第二个class list
中包含的链接。
然后实际上在每个Url我只对codeclub的价值感兴趣:
codeClub = 01670001
如何使用Nokogiri实现这一目标?
答案 0 :(得分:1)
您可以使用nokogiri获取锚标记a
,如下所示:
require 'nokogiri'
doc = Nokogiri::HTML.parse(<<-HTML_END)
<table class="list">
<tbody>
<tr>
<td>
</td>
<td>
<a href="club.do?codeClub=01670001&millesime=2015"></a>
</td>
</tr>
</tbody>
</table>
HTML_END
link = doc.css('table.list tbody tr td:nth-child(2) a')[0]['href']
=> "club.do?codeClub=01670001&millesime=2015"
然后你可以使用正则表达式来获取codeClub的整个查询参数:
link[/codeClub=([^&]*)/].gsub('codeClub=', '')
=> "01670001"