Парсер проходит по всем категориям и подкатегориям и скачивает информацию о товарах. Программа достаёт информацию не только об основном товаре, но и о его вариациях. Например, одна модель дивана может продаваться в нескольких цветах и тканях.
Какую информацию о товаре скачивает парсер:
- Артикул
- Полное название
- Цена (актуальная, старая, базовая)
- Фотографии
- Характеристики
- requests - HTTP запросы к сайту
- BeautifulSoup 4 - разбор HTML
- json - разбор объекта с вариациями товара
- yaml - загрузка и сохранение объекта с товарами
- csv - сохранение товаров для импорта в WordPress WooCommerce
При парсинге большого количества товаров могут возникать проблемы с некоторыми страницами. Поэтому ведётся лог выполнения скрипта в log.txt.
Каждый спарсенный товар сохраняется в файл pinskdrevru.yaml. YAML-файл используется для дальнейшего преобразования информации о товарах в формат, подходящий для импорта товаров в вашу CMS.
Моему заказчику нужен был импорт товаров на WordPress. Это можно сделать с помощью скрипта fromYamlToCsvForWoocommerce.py. Он преобразует товары из формата YAML в формат CSV, спецификация которого утверждена WooCommerce.
P.S. Вёрстка сайта pinskdrev.ru с тех пор изменилась, поэтому код имеет смысл использовать только в качестве основы для нового парсера.