3
<table>
  <tr>
    <td>hello</td>
    <td><img src="xyz.png" width="100" height="100"></td>
  </tr>
</table>



tabledata.rows.each do |row|
  row.cells.each do |cell|
    puts cell.text          
  end
end
puts "end"      

获取输出 ->

hello
end

我应该怎么做这样的输出->

hello
xyz.png
end

不使用 Nokogiri。

4

1 回答 1

8

获取属性

Element#attribute_value您可以使用该方法获取元素的属性。例如,

element.attribute_value('attribute')

对于许多标准属性,您还可以执行以下操作:

element.attribute

输出单元格文本或图像文本

假设一个单元格有文本或图像:

  1. 您可以遍历单元格
  2. 检查图像是否存在
  3. 如果存在,则输出图像 src
  4. 否则输出单元格文本

这看起来像:

tabledata.rows.each do |row|
  row.cells.each do |cell|
    if cell.image.exists?
      puts cell.image.src    #or cell.image.attribute_value('src')
    else
      puts cell.text
    end    
  end
end
puts "end" 
于 2013-04-13T12:14:32.057 回答