2017-08-23 3 views
1

Ich benutze Nokogiri Bibliothek in Ruby zum Parsen einer Webseite. Ich erhalte die XML-Ergebnisse als:Erhalten xml Attribute und Werte mit Ruby

#<Nokogiri::XML::Element:0x1399140 name="p" children=[#<Nokogiri::XML::Text:0x1398264 "\n">, 
#<Nokogiri::XML::Element:0x1395d50 name="i" attributes=[#<Nokogiri::XML::Attr:0x1395cb4 name="class" value="icon-pctgrm p-01_g">, 
#<Nokogiri::XML::Attr:0x1395ca8 name="title" value="new">]>, 
#<Nokogiri::XML::Text:0x1394e20 "\n">]> 

Von diesem Ergebnis, das ich um das Endergebnis erhalten müssen wie class:icon-pctgrm p-01_g, title:new

+1

Ok geben, was haben Sie versucht? – TheCog

Antwort

0

zuerst die xml als test.xml im selben Verzeichnis dieses Skript speichern und dann laufen this-

require 'nokogiri' 

File.foreach(File.open("test.xml")) do |line| 
    if /Attr/.match(line) 
    print line.split('name=')[-1].split('"')[1] + ":" + line.split('value=')[1].split('"')[1] + ", " 
    end 
end 

Dies wird das erwartete Ergebnis as- class:icon-pctgrm p-01_g, title:new,