Вопросы

Вставьте новую пару значений ключа внутрь и массива объектов, но значение создается axios.get

Итак, я работал над скребком. Все было хорошо, пока я не попробовал очистить данные для отдельной ссылки.

А теперь поясню: у меня есть скребок, который собирает данные о квартирах. Теперь первый url — это страница, на которой расположены статьи (нужно получить примерно 29-30). Теперь на этой странице у меня нет информации о квадратных метрах, поэтому мне нужно запустить еще один парсер для каждой ссылки, которая была очищена, и очистить квадратные метры оттуда.

Вот код, который у меня есть:

const axios = require('axios');
const cheerio = require('cheerio');

const url = `https://www.olx.ba/pretraga?vrsta=samoprodaja&kategorija=23&sort_order=desc&kanton=9&sacijenom=sacijenom&stranica=2`;
axios.get(url).then((response) => {
  const articles = [];
  const $ = cheerio.load(response.data);

  $('div[id="rezultatipretrage"] > div')
    .not('div[class="listitem artikal obicniArtikal  i index"]')
    .not('div[class="obicniArtikal"]')
    .each((index, element) => {
      $('span[class="prekrizenacijena"]').remove();
      const getLink = $(element).find('div[class="naslov"] > a').attr('href');
      const getDescription = $(element)
        .find('div[class="naslov"] > a > p')
        .text();
      const getPrice = $(element)
        .find('div[class="datum"] > span')
        .text()
        .replace(/\.| ?KM$/g, '')
        .replace(' ', '');
      const getPicture = $(element)
        .find('div[class="slika"] > img')
        .attr('src');

      articles[index] = {
        id: getLink.substring(27, 35),
        link: getLink,
        description: getDescription,
        price: getPrice,
        picture: getPicture,
      };
    });

  articles.map((item, index) => {
    axios.get(item.link).then((response) => {
      const $ = cheerio.load(response.data);
      const sqa = $('div[class="df2  "]').first().text();
    });
  });

  console.log(articles);
});

Теперь первая часть кода нравится как должна, я борюсь со второй частью.

Читать:
Symfony 4 Doctrine не может подключиться к Docker MySQL

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

Таким образом, моим желаемым результатом были бы обновленные статьи: со старыми объектами и ключевыми значениями внутри, но с ключевым sqm и значением очищенных sqaure meter.

Есть идеи, как этого добиться? Спасибо!

Похожие записи

Член функции-аксессора для вариативной шаблонной структуры

admin

Запустить скрипт во вкладках Терминала в High Sierra

admin

Где tox / pip ищет URL-адреса репозитория pypi?

admin

Как я могу разрешить документам в сегменте доступ к другим документам в этом же сегменте без разрешения общего доступа?

admin

Uncaught SyntaxError: невозможно использовать оператор импорта вне модуля

admin

Подсказка amCharts отображается только на DateAxis, но не на ValueAxis

admin