登录
首页 >  文章 >  前端

Node.js 请求网页文本内容乱码怎么办?

时间:2024-11-28 11:49:05 355浏览 收藏

IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天golang学习网给大家整理了《Node.js 请求网页文本内容乱码怎么办? 》,聊聊,我们一起来看看吧!

Node.js 请求网页文本内容乱码怎么办?

node使用request获取html文本内容编码异常

在node环境中,使用request爬取网页时,可能会遇到响应的body编码异常问题。

具体表现为:浏览器中显示正常的文本,而在node中打印出的却是乱码,如大量“�”字符。

产生此问题的原因是:

  • 编码不一致:网页返回的body内容可能是以一种浏览器无法直接识别的编码格式,如GBK,导致node打印乱码。
  • 缺少字符集信息:HTTP响应头中可能缺少字符集信息,导致node无法自动识别编码格式。

解决方法:

  • 使用合适的编码库:可以尝试使用支持更多编码格式的库,如axios。axios会自动识别并解码响应内容。代码如下:
const axios = require('axios')

function getGoods () {
    axios('https://www.58moto.com/used-car/1470264')
    .then(res => {
        console.log(res.data)
    })
}

getGoods()

通过使用axios,无需手动指定编码格式,即可获得正确的解码内容。

今天带大家了解了的相关知识,希望对你有所帮助;关于文章的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>