Nokogiri:填写空表格单元格的默认值

时间:2013-08-14 04:05:55

标签: ruby nokogiri

我正在尝试从HTML表格中抓取单元格值。随机地,这些单元格中的一些是空的,我无法猜测哪些单元格具有任何可靠性。

当Nokogiri遇到空单元格时,有没有办法填写默认值?

感谢您提供的任何建议。这是我的代码:

def scrape_stats
stats = []

(2002..2012).to_a.each do |year|
  url = "website/#{year}"
  doc = Nokogiri::HTML(open(url))

  rows = doc.at_css("body tbody").text.split(" ")

  (rows.count / 25).times do |i| # there are 25 columns per row
    stats << rows.shift(25)
  end
end

2 个答案:

答案 0 :(得分:0)

这基本上涉及使用Nokogiri::XML::Node#add_child方法(或更短的版本,Nokogiri::XML::Node#<<)添加一个包含要添加到空单元格的文本的新子节点。

请参阅此问题以获取示例:

  

How to add child nodes in NodeSet using Nokogiri

答案 1 :(得分:0)

听起来你想要这样的东西:

doc.search('td:empty').each{|n| n.content = 'default value'}