我正在学习Nodejs,并尝试使用node.js进行网页抓取
我正在使用 Node 模块request
和cheerio
但是当我请求 url 时,它返回一些符号而不是 html
正文
var request = require('request');
var cheerio = require('cheerio');
request({
url:"http://mangafox.me/manga/shingeki_no_kyojin/v00/c000/1.html"
},(err, res, body) => {
if(err) throw err;
else {
var $ = cheerio.load(body);
console.log(body);
}
});
命令提示符中的输出
谁能告诉我 这里有什么问题吗?
谢谢
最佳答案
问题在于服务器正在发送压缩响应,即使您没有请求压缩响应。
简单的修复方法是将 gzip: true
添加到 request()
选项中,这不仅会自动解压缩响应,还会向服务器发送适当的 Accept-Encoding
header 。
关于javascript - NodeJS 模块 'request' 返回一些符号而不是 html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38882986/