image image image image
Исходные данные: сайт https://www.ozon.ru. Надо спарсить товары нескольких определенных продавцов (предоставлены ссылки на продавцов), получить названия, цены, рейтинг и описание. Всё указанное, кроме описания можно получить прямо в списке карточек. Карточки подгружаются небольшими партиями при скроллинге страницы. Чтобы получить описание, надо перейти в подробную карточку товара, щелкнув по ссылке. Озон славится своей защитой от парсинга, внутренний АПИ есть, но тоже хорошо защищен, headless-режим блокирует. Но библиотека "nodriver" пока с ним работает довольно неплохо. Пройти по страницам и получить базовую информацию (название, цена, рейтинг) по всем карточкам можно довольно быстро и, после некоторых манипуляций, даже в headless-режиме. А вот описания в таком режиме не подгружаются, если в них есть картинки или видео. В визуальном же режиме всё работает стабильно. Значит, дешевый VPS без графической части для нашего парсера отпадает, что в случае таких гигантов, как Озон, не такой уж сюрприз. Также приходится везде вставлять паузы и ожидания для успокоения защиты, так что обход всех карточек товара занимает немало времени. Добавляем многопоточность и возможность использовать список прокси-серверов, без которых при множественных подключениях бана не избежать. Теперь скорость парсинга будет зависеть от возможностей вашего ПК и качества прокси-серверов. Долго ли, коротко ли, но список готов.