node js async request无法获取网页正文

时间:2017-11-21 14:50:32

标签: node.js async-await httprequest fetch

我希望从超过1000个网址的列表中获取网页正文(我的目标是使用cheerio进行抓取)。 问题是我得到了一个奇怪的GUNZIP结果,我无法获取body标签的内容。这是我正在使用的代码(我无法使用简单的"请求"因为它错过了某些请求

var async = require('async');
var fetch = require('isomorphic-unfetch');
const cheerio = require('cheerio');

let urls= // reading a list of ~1000 URLs from JSON file

async.mapLimit(urls, 1, async function(url) {
  const response = await fetch(url);
  return response.body
}, (err, results) => {
     if (err) throw err
     console.log(results);
});

1 个答案:

答案 0 :(得分:0)

  

问题是我得到了一个奇怪的GUNZIP结果

使用zlib,

which.max()

然后用cheerio解析你的解析:)
我希望这会有所帮助。