我有一个非常简单的xml doc(从html表中提取)和一个非常简单的Nokogiri脚本,但由于某种原因我无法从xml节点中获取文本。我可以获得属性,但不能获得文本/内容。任何人都知道以下可能出现的问题?
这是xml:
<?xml version="1.0" encoding="UTF-8"?>
<table class="renderedtable" border="1" cellpadding="2" cellspacing="0" width="100%">
<tr>
<th valign="top">
<p class="MsoNormal"> AIR CONDITIONING, VENTILATION & HEATING</p>
</th>
</tr>
</table>
世界上最简单的脚本引发了“未定义的方法'内容'”
require 'nokogiri'
a = IO.read('services_table.xml')
reader = Nokogiri::XML::Reader(a)
reader.each do |node|
if node.name == 'p'
@category = node.content
end
end
答案 0 :(得分:3)
尝试
reader.each { |node|
p node.inner_xml if node.name=="p"
}
Nokogiri.each
返回Nokogiri::XML::Reader
的实例,而不是Nokogiri::XML::Node
答案 1 :(得分:0)
编辑:要检查Nokogiri doc。使用node.methods
,您会看到有一个名为value
的方法,它似乎是使用的方法,而不是content
。