Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Marketplace Parser

Парсер товаров с маркетплейсов Ozon и Wildberries
Собирает название, цену, описание и характеристики с карточек товаров Ozon и Wildberries - по ссылке на поисковую выдачу или по ссылке на конкретный товар.
Работает через внутренние API маркетплейсов, что заметно быстрее и стабильнее браузерного парсинга.

Содержание

Технологии

  • Python 3.11+
  • Playwright - для headless Chromium
  • curl_cffi - для HTTP-запросов к внутренним API

Возможности

  • Сбор товаров по ссылке на поисковую выдачу или по прямой ссылке на товар
  • Полное извлечение описания и всех характеристик товара
  • Обход анти-бота Ozon и Wildberries
  • На Ozon - пометка в цене, если у другого продавца товар дешевле
  • Сохранение результатов в JSON (output/)
  • Подробные логи по каждому парсеру (logs/)
  • Работа без графического интерфейса браузера

Начало работы

Требования

  • ОС: совместим с Windows, Linux и macOS.

Если запускать из исходного кода:

  • Git
  • Python 3.11+

Установка

Запуск из .exe

  1. Скачайте Marketplace-Parser.zip под свою ОС из раздела Releases.
  2. Распакуйте и при необходимости измените config.toml.
  3. Запустите run.exe (Chromium-компонент автоматически установится)

Запуск из исходного кода:

  1. Клонируйте репозиторий:
git clone https://github.com/MaxDev43/Marketplace-Parser.git
cd Marketplace-Parser
  1. Создайте виртуальное окружение и установите зависимости:
    Windows:
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt

Linux / macOS:

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
  1. При необходимости измените config.toml.

  2. Запустите run.py

python run.py

Использование

  1. Скопируйте ссылку товара или с поисковой страницы Ozon/Wildberries (с уже выбранными фильтрами).
  2. Запустите основной файл run.py или run.exe
  3. Вставьте скопированную ссылку. Программа автоматически определит маркетплейс и начнёт работу.

Настройка config.toml

В этом файле можно изменить основные параметры работы программы. Например:

  • DEFAULT_PRODUCT_COUNT - количество товаров, которые нужно спарсить (по умолчанию - 15).
  • [ozon] CHECK_CHEAPER_OFFERS - проверять для каждого товара более дешёвые предложения других продавцов (по умолчанию - true).
  • [wildberries] DEST - код региона/пункта назначения для цен и остатков (по умолчанию - Москва). Если цены отличаются от вашего региона и вы знаете код пункта, то можете поменять.

Особенности

  • Не рекомендуется использовать VPN - маркетплейсы часто блокируют такие подключения.
  • На Wildberries анти-бот слабее, поэтому парсер работает быстрее.
  • Можно запускать парсеры напрямую: python parsers/ozon.py или python parsers/wildberries.py.
  • Имеются флаги (необязательные): -n (количество), -o (имя файла), -m (маркетплейс)

Зачем нужен проект

Программа быстро собирает информацию по большому количеству товаров.
Собранные данные удобно отправлять нейросети для анализа и выбора лучшего товара - это значительно ускоряет и упрощает процесс сравнения.

Как это работает

По ссылке парсер определяет маркетплейс и режим - поисковая выдача или один товар. Headless-браузер один раз проходит анти-бот проверку и открывает сессию, через которую дальше идут запросы к внутреннему API маркетплейса - тому же, которым пользуется сам сайт. Так собирается список товаров из выдачи и полная карточка каждого: название, цена, описание, характеристики. Каждый товар приводится к единому формату и добавляется в общий список. В конце список сохраняется в JSON в папку output, а ход работы пишется в лог.

Структура проекта

Marketplace-Parser/
├── parsers/
│   ├── ozon.py              # парсер Ozon
│   └── wildberries.py       # парсер Wildberries
├── output/                  # результаты парсинга (.json)
├── logs/                    # логи работы
├── browser/                 # Chromium runtime (установится после первого запуска)
├── run.py                   # основной файл запуска
├── requirements.txt         # зависимости
├── config.toml              # конфигурация программы
├── README.md
└── LICENSE

Ошибки или предложения принимаются — создайте Issue.
Если проект оказался полезным, просьба поставить star ⭐

About

Парсер товаров с маркетплейсов (Ozon, WB) - сбор названий, цен, описаний, характеристик

Topics

Resources

Stars

Watchers

Forks

Releases

Contributors

Languages