Das beste Knotenmodul für XML-Parsing [geschlossen]

271

Welches XML-Parsing ist das beste Knotenmodul, das ich für das XML-Parsing verwenden kann?

Manoj
quelle

Antworten:

199

Sie können xml2js ausprobieren . Es ist ein einfacher XML-zu-JavaScript-Objektkonverter. Ihr XML wird in ein JS-Objekt konvertiert, sodass Sie problemlos auf dessen Inhalt zugreifen können.

Hier sind einige andere Optionen:

  1. libxmljs
  2. XML-Stream
  3. xmldoc
  4. cheerio - implementiert eine Teilmenge von Core jQuery für XML (und HTML)

Ich habe verwendet xml2jsund es hat gut für mich funktioniert. Den Rest müssen Sie vielleicht selbst ausprobieren.

mithunsatheesh
quelle
4
libxmljs ermöglicht das Durchlaufen der XML mit Befehlen wie .find(), sehr nützlich.
Rafael Xavier
4
xml-streamhat bei mir sehr gut funktioniert. Dies ist besonders praktisch, wenn Sie XML-Daten von einem Remote-Server empfangen.
Auge
2
xml2js hat sehr gut für mich gearbeitet
rainabba
xml-stream funktioniert nicht gut mit Windows. Verwenden Sie xml-flow! github.com/matthewmatician/xml-flow
matthewmatician
140

Diese Antwort betrifft Entwickler für Windows. Sie möchten ein XML-Parsing-Modul auswählen, das NICHT von Node-Expat abhängt . Node-Expat erfordert Node-Gyp und Node-Gyp erfordert die Installation von Visual Studio auf Ihrem Computer. Wenn Ihr Computer ein Windows Server ist, möchten Sie Visual Studio definitiv nicht darauf installieren.

Welches XML-Parsing-Modul soll ausgewählt werden?

Sparen Sie sich viel Ärger und verwenden Sie entweder xml2js oder xmldoc . Sie hängen von sax.js ab , einer reinen Javascript-Lösung, für die kein Node-Gyp erforderlich ist.

Sowohl libxmljs als auch xml-stream erfordern Node-Gyp. Wählen Sie diese nicht aus, es sei denn, Sie haben Visual Studio bereits auf Ihrem Computer installiert oder es macht Ihnen nichts aus, diesen Weg zu gehen.

Update 24.10.2015: Es scheint, dass jemand eine Lösung gefunden hat, um Node-Gyp unter Windows zu verwenden, ohne VS zu installieren: https://github.com/nodejs/node-gyp/issues/629#issuecomment-138276692

Christiaan Westerbeek
quelle
19
@rainabba Deshalb habe ich geschrieben: Diese Antwort betrifft Entwickler für Windows. Unter Windows VS ist erforderlich.
Christiaan Westerbeek
10
@rainabba Ich möchte den ersten Satz des Node-Gyp-Git-Repo zitieren, damit alles in Ordnung ist. Sie wurden offensichtlich nicht mit Node-Gyp-Problemen im Fenster geplagt.
Shanks
1
Ich wünschte, ich würde dies lesen, bevor ich versuche, XML-Stream zu verwenden. Einige Stunden gingen verloren, als ich versuchte, Node-Gyp zum Laufen zu bringen
Nuno Furtado,
4
Wenn Ihr Computer ein Windows Server ist, möchten Sie Visual Studio definitiv nicht darauf installieren. Kann jemand diese Aussage erklären?
Num Lock
3
Visual Studio ist ein ziemlich schweres Entwicklungstool. Sie möchten normalerweise keine Entwicklungstools auf Produktionsservern installieren (und lizenzieren).
Thomas Redstone