写个爬虫解析xml里的CDATA遇到的问题
初学Nodejs 想写个爬xml的爬虫
本来想用cheerio 结果发现无法解析<![CDATA[我是无法解析的CDATA]]>
上网搜了下发现基于sax-js的xmlreader模块可以解析
自己写了个 发现无论怎样输出都是空的 上网搜了也无果
没办法了 只好求助各位大大麻烦解答一下
var superagent = require('superagent');
var xmlreader=require('xmlreader');
superagent.get('http://hexo.io/atom.xml')
.end(function (err, sres) {
if (err) {
return next(err);
}
xmlreader.read(sres.text,function(err,res){
if(err) return next(err);
console.log( res.feed.text());
})
});
网上的例子都是读取本地的xml文件 难道这个模块只能读本地的? 如果有更优雅的方法可以解析CDATA也请告诉我哈~
2 回复
试一下不同的 xml 库应该就能有答案了吧。找 github 上面 star 数多的来用。 你现在用的这个 star 好少
@alsotang 已经解决了 犯二了 res.feed.text()改成res.feed.html()就行了 自豪地采用 CNodeJS ionic