cheerio html 方法中文字体被转换问题,求教
发布于 9 年前 作者 lcyangily 19160 次浏览 最后一次编辑是 8 年前 来自 问答

cheerio 在使用的时候如果包含有中文字体,用html方法中文被转换成未知字体,如果解决,求教:

var $ = cheerio.load("<h1><p>你好</p><em>Hello,World!</em></h1>");
var title = $('h1').text();	//你好Hello,World!
var cnt = $('h1').html();//<p>&#x4F60;&#x597D;</p><em>Hello,World!</em>

使用html 方法中文被转成未知字体

11 回复

编码的问题吧?

同问,我也遇到这样的问题。最后没办法只能用text方法.

问题解决了,办法入下: 引入he模块,转码

var he = require('he');
he.decode(str);

@aquarius001 看下面回复

cheerio本身默认是转实体的 cheerio.load(html,{decodeEntities: false}); 加个参数

@skipify THK,之前也用了这个参数,没生效,估计单词写错了,又试了下,可以了, VERY THK

@skipify wow ! it really work!!

@skipify 正解,文档中没看有写

搞定了就是这个参数 {decodeEntities: false}

回到顶部