Cheerio не может найти IMG SRC

Мой черио-код, похоже, не работает. Я пытаюсь получить СРК от <img> тег найден внутри imgWrap div по указанной ссылке.

Я пытался переписать .imgWrap как .imgWrap img и удаление find но это тоже не сработало...

Тем не менее, если я делаю $(element).children() или же $(element).html() Я вижу результаты, которые я ожидаю...

request.get('http://www.bk.com/menu/burgers', function(error, response, body) {
   const $ = cheerio.load(body);

   let menu = $('.imgWrap').each(function(i, element) {
      let thing = $(element).find('img').attr('src');
      console.log(thing);
   });
})

1 ответ

Решение

Оказывается, этот конкретный веб-сайт использует ленивую загрузку для загрузки своих изображений, поэтому источник просмотра при проверке фактически отличается от информации, полученной в запросе на получение.

запрос на получение не имеет src связано с img элемент, а скорее data-cfsrc который содержит ту же информацию, что и src в исходном виде.

Итак, строка должна быть такой:

let thing = $(element).find('img').attr('data-cfsrc');

Большое спасибо @rlemon за помощь в устранении этой проблемы!

Другие вопросы по тегам