用于 XML 解析的最佳节点模块 [已关闭]

The best node module for XML parsing [closed]

提问人:Manoj 提问时间:2/15/2013 最后编辑:Alex KulinkovichManoj 更新时间:10/18/2019 访问量:280663

问:


要求我们推荐或查找工具、库或最喜欢的场外资源的问题与 Stack Overflow 无关,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,描述问题以及迄今为止为解决该问题所做的工作。

9年前关闭。

社区去年审查了是否重新讨论这个问题,并关闭了它:

原始关闭原因未解决

就XML解析而言,哪个是最好的节点模块,我可以用于XML解析?

节点 .js XML 解析

评论


答:

221赞 Mithun Satheesh 2/15/2013 #1

您可以尝试 xml2js。这是一个简单的 XML 到 JavaScript 对象转换器。它将 XML 转换为 JS 对象,以便您可以轻松访问其内容。

以下是一些其他选项:

  1. libxmljs
  2. xml-流
  3. xmldoc
  4. cheerio – 实现核心 jQuery for XML(和 HTML)的子集

我已经使用过,它对我来说效果很好。其余的你可能不得不自己尝试。xml2js

评论

5赞 Rafael Xavier 6/28/2013
libxmljs 允许使用像 这样的命令遍历 XML,这真的很有用。.find()
5赞 esengineer 10/18/2013
xml-stream对我很好。从远程服务器接收 XML 数据时特别方便。
2赞 rainabba 1/11/2014
xml2js 对我来说效果很好
0赞 matthewmatician 9/10/2015
xml-stream 不适用于 Windows。使用 xml-flow!github.com/matthewmatician/xml-flow
0赞 fullStackChris 12/2/2020
就其价值而言,xml-js 也非常好。它有 XML 到 JS 的方法,反之亦然,以及 XML 到 JSON 的方法,反之亦然。
150赞 Christiaan Westerbeek 1/6/2014 #2

此答案涉及 Windows 开发人员。您想要选择一个不依赖于 node-expat 的 XML 解析模块。Node-expat 需要 node-gyp,node-gyp 需要在计算机上安装 Visual Studio。如果你的计算机是 Windows Server,你肯定不想在其上安装 Visual Studio。

那么,选择哪个XML解析模块呢?

省去很多麻烦,使用 xml2jsxmldoc。它们依赖于 sax.js,这是一个不需要 node-gyp 的纯 Javascript 解决方案。

libxmljsxml-stream 都需要 node-gyp。除非你的计算机上已经安装了 Visual Studio,否则不要选择这些,或者你不介意走这条路。

2015-10-24 更新:似乎有人找到了一种在不安装 VS 的情况下在 Windows 上使用 node-gyp 的解决方案:https://github.com/nodejs/node-gyp/issues/629#issuecomment-138276692

评论

20赞 Christiaan Westerbeek 1/24/2014
@rainabba 这就是为什么我写了:这个答案涉及 Windows 的开发人员。在 Windows 上,VS 是必需的。
11赞 shanks 4/28/2014
@rainabba 我希望引用 node-gyp git repo 的第一句话就可以了。您显然没有受到 Windows 上的节点 gyp 问题的困扰。
1赞 Nuno Furtado 8/14/2014
希望我在尝试使用 xml-stream 之前阅读这篇文章,在尝试让 node-gyp 工作上浪费了几个小时
4赞 Num Lock 5/17/2016
如果你的计算机是 Windows Server,你肯定不想在其上安装 Visual Studio。谁能解释一下这种说法?
5赞 ThomasRedstone 9/22/2016
Visual Studio 是一个相当重量级的开发工具,你通常不希望在生产服务器上安装(和许可)开发工具。