当前位置: 首页 > 知识库问答 >
问题:

javascript - node中使用request获取html文本内容编码异常的问题?

哈翔
2023-12-28

在node环境中,使用request爬取一个网页时,响应的body编码异常?

代码如下:

const request = require('request')function getGoods () {    request('https://www.58moto.com/used-car/1470264', (err, res, body) => {        console.log(body)    })}getGoods()

浏览器中的响应:
image.png


实际打印结果:
image.png
实际打印部分内容:�z<[��zml�1;��g���J��4�~b��J��6^M=i���F}�\�e�ž�������������e�Lc�1Ӟ��M�ή�ׅFm:�=^㱩ZkG��l/L�T⏃���ͱ&�=,0���sc��������B}do�՘�ŅFs�ze�9^i<�����涽 �/4��,�:�=�n��W�/����{���#�OG�'?�F�tn��9{��Ql�i5�481�4f�믬�hNO7
���l6'��<?�����ܹ��zQ\�x�V�ͯ�ǎ/�=���/��>X����K�,޻�}���������:_������z檤���{��6�T=Ϛs�5׼Ϲ~��[~�y�g�Z��~������#��n̾<ԪO?<<���t}~�^_Zxu����B����c���CS������'��


这个被编码了的结果是怎么出现的?是哪种编码方式?

由于不清楚具体的编码方式,毫无头绪

共有2个答案

江展
2023-12-28

你这拿到的是字节流,可以调用 toString 转成字符串

const request = require('request')function getGoods () {    request('https://www.58moto.com/used-car/1470264', (err, res, body) => {        console.log(body.toString())    })}getGoods()
柳英豪
2023-12-28

问题已解决,换成axios就好了

 类似资料:
  • 问题内容: 我正在使用Selenium进行网络爬网,我想在Selenium模拟点击假链接后获得由JavaScript编写的元素(例如链接)。 我尝试了get_html_source(),但其中不包含JavaScript编写的内容。 我写的代码: 我使用while循环单击一系列伪造的链接,这些伪造的链接触发js操作以显示额外的内容,而该内容正是我想要的。但是sel.get_html_source()

  • 问题内容: 这个问题已经在这里有了答案 : 使用Python在Selenium WebDriver中获取WebElement的HTML源代码 (15个答案) 6年前关闭。 我正在使用Selenium进行网络爬网,我想在Selenium模拟点击假链接后获得由JavaScript编写的元素(例如链接)。 我尝试了get_html_source(),但其中不包含JavaScript编写的内容。 我写的代

  • 问题内容: 我可以使用以下代码来获取选定的文本: 但是,如何获取包含文本和html标签的选定HTML? 问题答案: 在IE <= 10浏览器中,它是: 在非IE浏览器中,我只是尝试玩这个游戏……这似乎奏效,将节点分成两半并产生额外的跨度会产生副作用,但这是一个起点: 不幸的是,我似乎无法将节点放回原来的位置(例如,因为您可以从跨度中拉出一半的文本)。

  • 示例: <?php $content='html格式内容'; $imgs=sp_getcontent_imgs($content); //获取内容中图片信息 print_r($imginfo); ?> 返回字段说明: title:图片的title属性 alt:图片的alt属性 src:图片的资源路径

  • <?php $http = Yurun\Util\HttpRequest::newSession(); $response = $http->get('http://www.baidu.com/'); var_dump('utf-8:', $response->body()); // 或用$response->body() var_dump('gb2312:', $response->body('

  • 本文向大家介绍用JavaScript获取页面文档内容的实现代码,包括了用JavaScript获取页面文档内容的实现代码的使用技巧和注意事项,需要的朋友参考一下 JavaScript的document对象包含了页面的实际内容,所以利用document对象可以获取页面内容,例如页面标题、各个表单值。 以上这篇用JavaScript获取页面文档内容的实现代码就是小编分享给大家的全部内容了,希望能给大家一