Ich habe ein paar Probleme mit Nokogiri.Wie verwende ich Nokogiri zum Parsen einer XML-Datei?
Ich versuche, diese XML-Datei zu analysieren:
<Collection version="2.0" id="74j5hc4je3b9">
<Name>A Funfair in Bangkok</Name>
<PermaLink>Funfair in Bangkok</PermaLink>
<PermaLinkIsName>True</PermaLinkIsName>
<Description>A small funfair near On Nut in Bangkok.</Description>
<Date>2009-08-03T00:00:00</Date>
<IsHidden>False</IsHidden>
<Items>
<Item filename="AGC_1998.jpg">
<Title>Funfair in Bangkok</Title>
<Caption>A small funfair near On Nut in Bangkok.</Caption>
<Authors>Anthony Bouch</Authors>
<Copyright>Copyright © Anthony Bouch</Copyright>
<CreatedDate>2009-08-07T19:22:08</CreatedDate>
<Keywords>
<Keyword>Funfair</Keyword>
<Keyword>Bangkok</Keyword>
<Keyword>Thailand</Keyword>
</Keywords>
<ThumbnailSize width="133" height="200" />
<PreviewSize width="532" height="800" />
<OriginalSize width="2279" height="3425" />
</Item>
<Item filename="AGC_1164.jpg" iscover="True">
<Title>Bumper Cars at a Funfair in Bangkok</Title>
<Caption>Bumper cars at a small funfair near On Nut in Bangkok.</Caption>
<Authors>Anthony Bouch</Authors>
<Copyright>Copyright © Anthony Bouch</Copyright>
<CreatedDate>2009-08-03T22:08:24</CreatedDate>
<Keywords>
<Keyword>Bumper Cars</Keyword>
<Keyword>Funfair</Keyword>
<Keyword>Bangkok</Keyword>
<Keyword>Thailand</Keyword>
</Keywords>
<ThumbnailSize width="200" height="133" />
<PreviewSize width="800" height="532" />
<OriginalSize width="3725" height="2479" />
</Item>
</Items>
</Collection>
ich all das auf dem Bildschirm angezeigten Informationen wollen, das ist es. Sollte einfach sein oder? Ich tue dies:
require 'nokogiri'
doc = Nokogiri::XML(File.open("sample.xml"))
@block = doc.css("items item").map {|node| node.children.text}
puts @block
Jeder Items
ist ein Knoten, und unter, dass es Kinder Knoten Item
sind?
Ich erstelle eine Karte von diesem, die einen Hash zurückgibt, und der Code in {}
geht durch jeden Knoten und platziert den untergeordneten Text in @block
. Dann kann ich den gesamten Text des Kindknotens auf dem Bildschirm anzeigen.
Ich habe keine Ahnung, wie weit oder nah ich bin, weil ich so viele Artikel gelesen habe, und bin immer noch ein wenig verwirrt auf den Grundlagen besonders da ich normalerweise mit einer neuen Sprache aus einer Datei lese und ausgabe an die Bildschirm für ein Basisprogramm.
Wenn Sie eine bestimmte Frage haben, sagen Sie es mir. Ich werde dir antworten. –
Ich habe eine andere Frage. http: // Stapelüberlauf.com/questions/17600037/using-nokogiri-to-parse-xml-datei Es geht darum, wie man den Knotenbaum durchläuft. – camdixon
verknüpfte Frage zeigt auf diesen Beitrag. –