26.08.2026 · блог

Парсинг Ozon: как выгрузить данные о товарах и продавцах

Ozon не отдаёт каталог наружу: официальный API есть только у продавца и только по его собственным товарам. Всё остальное — цены конкурентов, ассортимент категории, витрины чужих магазинов — собирается с публичных страниц, и ниже разбор, как это устроено на практике.

Какие данные реально лежат на страницах Ozon

Независимо от способа сбора доступно примерно одно и то же — то, что видит покупатель. По товару это название, артикул (SKU) Ozon, ссылка на карточку, бренд, категория, цена в нескольких вариантах (обычная, со скидкой, с Ozon Картой), признак наличия, рейтинг и количество отзывов, характеристики из таблицы, изображения и продавец.

По продавцу собирается его витрина: название магазина, рейтинг, количество отзывов о работе, полный список товаров с ценами, а также юридические реквизиты в том объёме, в каком площадка публикует их на карточке.

Чего на страницах нет и что нельзя выгрузить честно:

Если подрядчик обещает «точные продажи конкурента», это модельная оценка, и о её погрешности стоит спросить отдельно.

Три способа выгрузки и когда какой нужен

Ozon Seller API — официальный путь для продавца по собственным товарам: заказы, остатки, цены, отчёты. Бесплатно, стабильно, документировано. Ограничение одно, но принципиальное: чужой ассортимент через него не получить.

Ручная выгрузка — скачать таблицу из кабинета или собрать выдачу руками. Работает ровно один раз и на небольшом объёме. Для еженедельного мониторинга категории из тысяч карточек не годится.

Парсинг публичных страниц — единственный способ получить данные по чужим товарам, категориям и продавцам. Собирается только то, что открыто показано неавторизованному посетителю: без обхода авторизации, без персональных данных покупателей, с ограничением нагрузки на площадку.

На практике связка обычно такая: свои товары и остатки идут через Seller API, конкуренты и категория — парсингом, и оба потока сводятся в одну таблицу по SKU.

Почему скрипт «на коленке» ломается на Ozon

Ozon отдаёт страницы через JavaScript и защищён антиботом, поэтому простой запрос из Python чаще получает не карточку, а проверку. Дальше добавляются три вещи, о которых обычно забывают:

Наш вариант — сбор настоящим браузером с российского адреса, с явно зафиксированным регионом доставки, паузами вместо максимальной скорости, повторными проходами по неудачным карточкам и контролем качества: если доля пустых полей в срезе выше нормы, запуск помечается как сбойный и не уходит в отчёт.

Разовая выгрузка или регулярный мониторинг

Один срез отвечает на вопрос «что происходит сейчас». Ценность появляется, когда срезы повторяются: видно, кто и когда снижает цену, сколько держится акция, когда конкурент уходит в «нет в наличии», как меняется состав продавцов на карточке. Под это у нас своя база истории цен — около 3,8 ГБ накопленных срезов.

Частота выбирается по задаче: для обзора категории обычно хватает суточного среза, для узкого списка ключевых позиций — часового. Куда уходят данные:

Всё это работает по расписанию на своём сервере: запуск, повтор при ошибке, выгрузка — без ручного присмотра. Разовый сбор помогает решить «заходить в категорию или нет», регулярный нужен для ежедневного ценообразования.

Нужно так же под вашу задачу?

Соберём под ваш случай и покажем на ваших данных.

Сбор данных →