使用ruby从url解析XML文档



我对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" " ... 的第一行中有一个语法错误

相关内容

  • 没有找到相关文章