我正在使用Nokogiri :: XML來解析來自Amazon SimpleDB的響應。響應是一樣的東西:爲什麼Nokogiri xpath不像xmlns聲明
<SelectResponse xmlns="http://sdb.amazonaws.com/doc/2007-11-07/">
<SelectResult>
<Item>
<Attribute><Name>Foo</Name><Value>42</Value></Attribute>
<Attribute><Name>Bar</Name><Value>XYZ</Value></Attribute>
</Item>
</SelectResult>
</SelectResponse>
如果我剛剛到手的響應直接到引入nokogiri,所有的XPath查詢(例如doc/"//Item/Attribute[Name='Foo']/Value"
)返回一個空數組。但是,如果我從SelectResponse
標記中刪除xmlns
屬性,則它完美地起作用。
是否有一些額外的事情我需要做的帳戶名稱空間聲明?這種解決方法非常像黑客攻擊。
這是固定的。謝謝。 – 2009-11-15 15:45:08
只需提供像「doc.xpath('// xmlns:Item ...」這樣的「** xmlns:**」即可。 – user569825 2013-03-19 14:49:40