Зачем нужен парсер Озона
Через Seller API продавец видит только свой кабинет. А цены конкурентов, карточки чужих товаров или полный список SKU другого магазина можно получить только с витрины, так, как их видит покупатель. Вручную это открывать страницы и копировать данные, а при сотнях товаров это уже не работает.
Парсер закрывает эту задачу как отдельный HTTP-сервис: ему передают SKU или ссылку, а он возвращает данные в JSON. Такой ответ легко встроить в таблицу, бота, репрайсер или каталог на сайте.
Что умеет парсер
- Цена по SKU. Витринная цена, цена с Ozon Картой и цена до скидки.
- Полная карточка товара. Название, бренд, описание, обложка и все фото, категория, основные характеристики, продавец, рейтинг, число отзывов и первые отзывы с оценкой, текстом, плюсами, минусами и фото.
- Все SKU магазина. По ссылке на магазин или ID продавца сервис проходит витрину постранично и собирает список товаров: SKU, название, ссылку, цену и картинку. Дубли отбрасываются, число страниц и пауза между ними настраиваются.
Как проходит защиту от ботов
Озон проверяет посетителей антибот-системой, и обычные запросы к витрине быстро блокируются. Поэтому сервис работает в два этапа:
- Браузер Camoufox (Firefox с правдоподобным отпечатком) открывает страницу товара через резидентный прокси и проходит проверку, как обычный посетитель.
- Полученная сессия (cookies, user-agent и IP) сохраняется, и дальше запросы идут через curl_cffi с TLS-отпечатком Firefox. Это быстро и не требует держать открытый браузер на каждый запрос.
Сессия обновляется по расписанию, а если запрос всё же заблокирован, сервис повторяет его, при повторной блокировке заново проходит проверку в браузере и отдаёт результат уже по свежей сессии.
Честные ограничения
- Персональные цены, которые видны только после входа в аккаунт, скрейпингом не получить.
- Характеристики отдаются кратким списком, как в блоке рядом с ценой, а не полной таблицей.
- Если товара нет в наличии или ссылка ведёт на категорию, сервис возвращает пустую цену и причину, а не ошибку.
- Без прокси сервис не работает: без него защита Озона не пропускает.
Как устроено
Python и FastAPI, одно приложение в Docker-контейнере. Эндпоинты: цена по SKU, полная карточка, список SKU магазина, проверка состояния и ручное обновление сессии. Браузер запускается по одному, чтобы не плодить сессии, а обычные запросы идут параллельно. Данные берутся из того же JSON, которым витрина Озона наполняет страницу, а если его нет, цены достаются из HTML страницы.
Частые вопросы
Можно ли спарсить цены конкурентов на Озоне?
Да, если товар доступен на витрине без входа в аккаунт. Парсер отдаёт обычную цену, цену с Ozon Картой и цену до скидки по SKU или ссылке.
Можно ли выгрузить все товары чужого магазина?
Да. По ссылке на магазин или ID продавца сервис проходит витрину постранично и собирает SKU, названия, ссылки, цены и картинки.
В каком формате приходят данные?
В JSON через HTTP API. Его можно забирать из Google Таблицы, бота, 1С или своего сервиса.
Собирает ли парсер отзывы?
Да, в режиме полной карточки: первые отзывы с оценкой, датой, текстом, плюсами, минусами и фото.
Нужен ли доступ к кабинету продавца?
Нет. Парсер работает только с публичной витриной Озона.


