NodeJs cherrio library parse xml



我正在使用Cherrio解析XML文件。我已经加载了文件,还设置了xmlmode:true。

var $ = cheerio.load(rawAssertion, {
    xmlMode: true
});

我的XML像Bellow:

<myNamespace:myTagData>
    <myNamespace:myTag>data inside this node</myNamespace:myTag>
</myNamespace:myTagData>

我的问题是我要搜索的特定节点具有一个命名空间,看来进行简单的搜索找不到我的节点。我尝试了以下内容:

var tagInfo= $('myTag');
console.log(tagInfo.text());

打印文本值时,结果是空字符串。如我所知,这可以表明该元素现在在XML中找到。

我尝试在搜索节点时尝试添加namspace,但我收到了一个错误:syntaxerror:norpatched pseudo-class。

请注意,我可以访问没有名称空间的XML节点的文本。

如何搜索具有名称空间的XML节点?

它通过添加名称空间来工作。唯一要记住的是您必须逃脱结肠:

var tagInfo= $('myNamespace\:myTag');
console.log(tagInfo.text());

最新更新