【发布时间】:2019-12-10 00:43:09
【问题描述】:
我正在尝试使用 node.js 上的库请求来抓取 html。响应代码是 200,我得到的数据是不可读的。这是我的代码:
var request = require("request");
const options = {
uri: 'https://www.wikipedia.org',
encoding: 'utf-8',
headers: {
"Accept": "text/html,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3",
"charset": "utf-8",
"Accept-Encoding": "gzip, deflate, br",
"Accept-Language": "en-US,en;q=0.9",
"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/78.0.3904.108 Chrome/78.0.3904.108 Safari/537.36"
}
};
request(options, function(error, response, body) {
console.log(body);
});
如您所见,我发送了对 html 和 utf-8 的请求,但得到了一个大字符串,如 f��j���+����x��,�G�Y�l
我的节点版本是v8.10.0,请求版本是2.88.0。
代码有问题还是我遗漏了什么??
任何解决此问题的提示将不胜感激。
【问题讨论】:
标签: node.js utf-8 request scrape