В данном материале показан пример скрейпинга содержимого сайта Авито с помощью Node.js и Puppeteer. Материал основан на отличной статье “Скрейпинг веб-сайта с помощью Node.js и Puppeteer” с сайта digitalocean.com (автор Gbadebo Bello). Для работы примера у вас должны быть установлены: node, npm и puppeteer. О том, как это сделать, вы можете посмотреть в материале Gbadebo Bello. Для запуска кода из данного материала был использован node версии 14.21.1 и npm версии 6.14.17.
Всего понадобится создать 5 файлов: package.json, index.js, browser.js, pageController.js, pageScraper.js. Содержимое всех файлов смотрите ниже.
Функция scraper(browser, city, category) в качестве параметров принимает название города и категории. В данном примере используется город ekaterinburg и категория kvartiry. Используя эти параметры, функция scraper() формирует ссылку к странице сайта Авито: www.avito.ru/ekaterinburg/kvartiry. После чего со страницы собирается список ссылок, далее осуществляется