我正在使用Nokogiri
和ruby
,我正在尝试通过以下链接从表中获取信息:roster。
在过去,我已经使用了“id”字段作为我想要使用的表,但是因为我想要防止他们在将来更改该ID并破坏我的代码,我想通过假设来识别表关于它的属性。例如,该表具有非常多的行数(<tr>
),并假设它几乎总是有4列或更多列。
我在这里遇到的问题是,当我使用以下代码拉回网页中的所有表格然后查找具有80多行的表格时,它会计算子表格的行数,当我想要只计算直接孩子的行数。
tables = document.css("table")
tables.each do |table|
tables.each { |table| puts "#{table.css('tr').count}" }
end
此输出将是......
202
135
109
22
19
1
0
这里实际上只有一个表是100多行。但是因为文档在表中嵌入了表,所以它返回表中所有<tr>
元素的计数,包括嵌入表。如何更改我的选择器以仅返回每个表中的直接子<tr>
计数?