我对XML不是很熟悉,正在边学习ruby。我遇到的问题是,我使用的xml文件的格式与所有示例不同。我正在尝试我们野村,因为这似乎是一个流行的做法。
我的XML文件来自url,看起来像这个
<guides of="XML" rtn="5" tot="10" cv="1" a="XPU_NextStep" id="0" " w="" q="" g="Echo" gr="HomeRec" gt="doc" js_q="" token="0:1QeU|5iG|557|1Y7p|4rE|">
<r t="Orbelle Toddler Bed - Cappuccino" g="Echo" s="1" rk="1" pt="0" at="0" pr="0" ar="0">
<a n="onsale" v="Yes"/>
<a n="SKU" v="OTI041"/>
<display>
<thumb n="imageName" v="http://images/mgen/master:OTI041.jpg?is=400,400"/>
<labels>
<l n="salePrice" v="Sale Price: 69.98"/>
<l n="catName" v="Toddler Beds"/>
<l n="id" v="OTI041"/>
</labels>
</display>
</r>
<r t="The Orbelle Contemporary Solid Wood Toddler Bed - Cappuccino" g="XPU_NextStep" tm="bed, toddler, toddler bed, the orbelle contemporary solid wood toddler bed cappuccino, toddler beds" s="0.4688" rk="2" pt="873" at="0" pr="0" ar="0">
<a n="availableDomain" v="ToddlerBeds,KidsFurnitureMart"/>
<a n="deptName" v="Kids"/>
<a n="onsale" v="Yes"/>
<a n="SKU" v="OTI029"/>
<a n="nicheCategory" v="Kids Beds,Standard Toddler Beds"/>
<display>
<thumb n="imageName" v="http://images/mgen/master:OTI029.jpg?is=400,400"/>
<labels>
<l n="salePrice" v="Sale Price: 59.98"/>
<l n="catName" v="Toddler Beds"/>
</labels>
</display>
</r>
我正试图从每一个下面抓住v="OTI041"
现在我只能用-打开文件
doc = Nokogiri::XML(open("http://www.somesite.com"))
使用此XPath:
doc.xpath('//r/a[@n="SKU"]/@v').each {|x| puts x.value }
另外,请注意,在... id="0" " ...
的第一行中有一个语法错误