写个爬虫解析xml里的CDATA遇到的问题
发布于 10 年前 作者 SuperKieran 6314 次浏览 最后一次编辑是 8 年前 来自 问答

初学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

回到顶部