Modul simpul terbaik untuk parsing XML [tertutup]

271

Sejauh menyangkut XML parsing, yang merupakan modul simpul terbaik, yang dapat saya gunakan untuk parsing XML?

Manoj
sumber

Jawaban:

199

Anda dapat mencoba xml2js . Ini adalah konverter objek XML ke JavaScript yang sederhana. Itu membuat XML Anda dikonversi ke objek JS sehingga Anda dapat mengakses kontennya dengan mudah.

Berikut beberapa opsi lain:

  1. libxmljs
  2. xml-stream
  3. xmldoc
  4. cheerio - mengimplementasikan subset inti jQuery untuk XML (dan HTML)

Saya telah menggunakan xml2jsdan itu bekerja dengan baik untuk saya. Selebihnya Anda mungkin harus mencoba sendiri.

mithunsatheesh
sumber
4
libxmljs memungkinkan melintasi xml dengan perintah seperti .find(), sangat berguna.
Rafael Xavier
4
xml-streambekerja untuk saya dengan sangat baik. Sangat nyaman saat menerima data XML dari server jauh.
Eye
2
xml2js telah bekerja dengan sangat baik untuk saya
rainabba
xml-stream tidak bekerja dengan baik dengan windows. Gunakan aliran xml! github.com/matthewmatician/xml-flow
matthewmatician
140

Jawaban ini menyangkut pengembang untuk Windows. Anda ingin memilih modul parsing XML yang TIDAK tergantung pada node-expat . Node-expat membutuhkan node-gyp dan node-gyp mengharuskan Anda untuk menginstal Visual Studio pada mesin Anda. Jika mesin Anda adalah Windows Server, Anda pasti tidak ingin menginstal Visual Studio di atasnya.

Jadi, modul parsing XML mana yang akan dipilih?

Hemat banyak masalah dan gunakan xml2js atau xmldoc . Mereka bergantung pada sax.js yang merupakan solusi Javascript murni yang tidak memerlukan node-gyp.

Baik libxmljs dan xml-stream membutuhkan node-gyp. Jangan memilih ini kecuali Anda sudah menginstal Visual Studio pada mesin Anda atau Anda tidak keberatan menuruni jalan itu.

Pembaruan 2015-10-24: tampaknya seseorang menemukan solusi untuk menggunakan node-gyp di Windows tanpa menginstal VS: https://github.com/nodejs/node-gyp/issues/629#issuecomment-138276692

Christiaan Westerbeek
sumber
19
@rainabba Itu sebabnya saya menulis: Jawaban ini menyangkut pengembang untuk Windows. Di Windows VS diperlukan.
Christiaan Westerbeek
10
@rainabba Saya ingin mengutip kalimat pertama dari repo node-gyp git membuat semuanya baik-baik saja. Anda jelas belum terganggu dengan masalah node-gyp di jendela.
shanks
1
harap saya membaca ini sebelum mencoba menggunakan xml-stream, beberapa jam hilang saat mencoba agar node-gyp berfungsi
Nuno Furtado
4
Jika mesin Anda adalah Windows Server, Anda pasti tidak ingin menginstal Visual Studio di atasnya. Adakah yang bisa menjelaskan pernyataan ini?
Num Lock
3
Visual Studio adalah alat pengembangan yang cukup berat, Anda biasanya tidak ingin menginstal (dan lisensi) alat pengembangan, di server produksi.
ThomasRedstone