Сокращение избыточности с помощью NodeJS и Cheerio

Мне просто интересно, как бы я уменьшил избыточность в этих двух парсерах, так как я не хочу, чтобы он дважды запрашивал веб-сайт. Я новичок в этом и не очень хорошо знаком с синтаксисом. Вот фрагмент кода:

            request(website_url, function(err, resp, body) {
            var $ = cheerio.load(body);
            $('.title').each(function(){
                var title = $(this).children('h2').children('span').text();
                titles.push(title);
            });

        request(website_url, function(err, resp, body) {
            var $ = cheerio.load(body);
            $('.post-box-excerpt').each(function(){
                var caption = $(this).children('p').text();
                captions.push(caption);
            });

person hsel    schedule 28.06.2017    source источник


Ответы (1)


Самый простой способ — просто сделать один единственный вызов API:

request(website_url, function (err, resp, body) {
  var $ = cheerio.load(body);

  $('.title').each(function () {
    var title = $(this).children('h2').children('span').text();
    titles.push(title);
  });

  $('.post-box-excerpt').each(function () {
    var caption = $(this).children('p').text();
    captions.push(caption);
  });
});
person Alexandru Olaru    schedule 28.06.2017