如何找到Nokogiri不空的标签?

如何找到Nokogiri不空的标签?

问题描述:

我得到了这段代码,但我只是想要它抓取非空的p-tags,我该怎么做?如何找到Nokogiri不空的标签?

doc.css('p').first(3).each do |paragraph| 
    puts raw(paragraph) 
end 

使用select

doc.css('p').select{ |n| n.inner_text }.each do |paragraph| 
    puts raw(paragraph) 
end 

如果,如果你完全消除空白标签也不要紧,你可以尝试这样的事:

doc.css('p').each do |node| 
    node.remove if node.inner_text == '' 
end 

不是很优雅,但你的代码前加上这一点,你不会在后续查询中获取任何空白节点。