J'ai quelques problèmes en essayant d'obtenir le code ci-dessous pour sortir les données dans le format que je veux. Ce que je suis après est la suivante:RUBY Nokogiri HTML HTML d'analyse
CCC1- 5,00 $
$
CCC1- 10,00 $
CCC1- 15.00 $
CCC2- 7,00
où 7 $ appartient à Ccc2 et les autres à CCC1, mais je ne peux gérer pour obtenir les données dans ce format:
CCC1- $ 5.00
CCC1- 10,00 $
CCC1- 15.00 $
CCC1- 7,00 $
CCC2- 5,00
$ 10.00 CCC2-
$ 15.00 $ CCC2-
CCC2- 7,00 $
Toute aide serait appréciée.
require 'rubygems'
require 'nokogiri'
require 'open-uri'
doc = Nokogiri::HTML.parse(<<-eohtml)
<div class="AAA">
<table cellspacing="0" cellpadding="0" border="0" summary="sum">
<tbody>
<tr>
<td class="BBB">
<span class="CCC">CCC1</span>
</td>
<td class="DDD">
<table cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr><td class="FFF">$5.00</td></tr>
<tr><td class="FFF">$10.00</td></tr>
<tr><td class="FFF">$15.00</td></tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<table cellspacing="0" cellpadding="0" border="0" summary="sum">
<tbody>
<tr>
<td class="BBB">
<span class="CCC">CCC2</span>
</td>
<td class="DDD">
<table cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr><td class="FFF">$7.00</td></tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
eohtml
doc.css('td.BBB > span.CCC').each do |something|
doc.css('tr > td.EEE, tr > td.FFF').each do |something_more|
puts something.content + '-'+ something_more.content
end
end
kool, ce qui fonctionne très bien. merci un million :) – user296507
Pourriez-vous dire le sens de '' td.BBB> span.CCC''? où est la documentation? –
'>' dans la syntaxe css est expliqué @ http://stackoverflow.com/questions/4459821/css-selector-what-is-it – vaichidrewar