首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Node.js欢迎词怪字(西里尔字母)

Node.js欢迎词怪字(西里尔字母)
EN

Stack Overflow用户
提问于 2016-03-23 20:15:46
回答 1查看 560关注 0票数 0

当我试图解析一个页面时,我会得到一些奇怪的字符。

这是我的代码:

代码语言:javascript
运行
复制
var getPageContent = function getPageContent(url, callback) {
    https.get(url, function (res) {
        var data = "";
        res.on('data', function (chunk) {
            data += chunk;
        });
        res.on("end", function () {
            callback(data));
        });
    }).on("error", function () {
        callback(null);
    });
};

getPageContent(url, function (response) {
    var $ = cheerio.load(response, { decodeEntities: false });
    $("div.details-info").each(function() {
        console.log($(this).html());
    });
});

我的结果是:

代码语言:javascript
运行
复制
<span>Ст��атегии</span>
<span>Стратег��и</span>
<span>Стра��егии</span>
<span>Стратегии</span>
<span>Стратегии</span>
...

最奇怪的是,从同一个网址,有时我得到了这个奇怪的字符,有时我没有。而且,当我在我的电脑运行时,它的工作正常。我只在服务器上看到这个字符。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-23 20:27:55

您可能需要手动将response的字符集转换为UTF-8。您可以使用iconviconv-lite模块来完成这一任务。cheerio本身不会自动处理字符集转换。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36187893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档