Браузерный движок для обхода антибот-систем маркетплейсов
  • Python 96.2%
  • Shell 1.6%
  • Dockerfile 1.2%
  • Mako 1%
Find a file
2026-05-26 14:18:44 +03:00
migrations v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
src v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
.env.example add .env.example 2026-05-26 13:16:27 +03:00
.gitignore v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
alembic.ini v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
CHANGELOG.md v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
config.yaml fix: login phone format + submit_code + session save 2026-05-19 21:06:05 +03:00
deploy.sh v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
docker-compose.prod.yml fix: Traefik HTTPS routing for browser.isdata.tech 2026-05-26 14:18:44 +03:00
docker-compose.yml MP Browser v0.1.0 — антидетект браузер с API и плагинами 2026-05-19 14:42:16 +03:00
Dockerfile v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
pyproject.toml v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
README.md v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
requirements.txt v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00
VERSION v2026.5.26 — PostgreSQL, API key auth, production deploy 2026-05-26 13:15:47 +03:00

MP Browser v2026.5.26

Браузерный движок для обхода антибот-систем маркетплейсов (Wildberries, Ozon и др.). Имитирует поведение реального пользователя: хранит сессию, куки, делает задержки, прокидывает капчу оператору.

Возможности

  • Обход антибот-системы WB — JS-челлендж проходит за 2-3 секунды
  • Авторизация WB — полный цикл (телефон → push/SMS → код)
  • Реалистичный User-Agent — эмуляция Chrome 148
  • Cookie-менеджер — предзагрузка кук Яндекса, Дзена, WB
  • Хранение сессий — автозагрузка и сохранение (файлы + PostgreSQL)
  • Человеческие задержки — скролл, мышь, клики с рандомными паузами
  • Детектор капчи — распознаёт captcha/антибот и делегирует оператору
  • Прокси — поддержка BrightData, Proxy6 и любых HTTP/SOCKS5
  • REST API — управление через HTTP (FastAPI)
  • API Key auth — защита эндпоинтов
  • PostgreSQL — логирование, хранение сессий, API-ключи
  • Docker — готовый Dockerfile + docker-compose

Архитектура

FastAPI (API:8001) -> Browser Manager -> Playwright Chromium (channel=chromium)
     |
  Captcha Detector -> Telegram/API -> Оператор
     |
  Session Storage (FS + PostgreSQL)
  Cookie Preloader (Yandex, Dzen, WB)
  Behavior Emulator (scroll, mouse, delays)

Быстрый старт

# Клонировать
git clone https://git.isdata.tech/ciger3a/mp-browser.git
cd mp-browser

# Через Docker
cp .env.example .env  # настроить окружение
docker compose up -d

# Или напрямую Python
pip install -r requirements.txt
playwright install chromium
python -m src.main

API (с API key)

Все запросы (кроме /status, /health) требуют заголовок:

X-API-Key: ваш_ключ
Метод Путь Описание
GET /status Статус сервера
GET /health Health check
POST /api/browser/open Запустить браузер
POST /api/browser/close Закрыть браузер
POST /api/navigate Открыть URL (с ожиданием челленджа)
GET /api/screenshot Скриншот страницы
GET /api/cookies Получить куки
POST /api/cookies/set Установить куки
POST /api/cookies/load Загрузить предустановленные куки
POST /api/captcha/solve Отправить решение капчи
GET /api/sessions Список сохранённых сессий
POST /api/plugins/wb/login Логин на WB по телефону
POST /api/plugins/wb/login/code Отправить SMS-код
POST /api/plugins/wb/product Инфо о товаре WB
POST /api/plugins/wb/search Поиск товаров WB

Конфигурация

См. config.yaml. Переменные окружения имеют приоритет.

Переменные окружения

Переменная По умолчанию Описание
MP_BROWSER_API_KEY_ENABLED false Включить API key auth
MP_BROWSER_API_KEY_VALUE Значение API ключа
MP_BROWSER_DB_HOST 192.168.1.41 Хост PostgreSQL
MP_BROWSER_DB_PORT 5432 Порт PostgreSQL
MP_BROWSER_DB_NAME mp_browser Имя БД
MP_BROWSER_DB_USER mp_browser Пользователь БД
MP_BROWSER_DB_PASSWORD mp_browser_pass Пароль БД

Развёртывание

# Продакшен
docker compose -f docker-compose.prod.yml up -d --build

# Миграция БД
docker compose -f docker-compose.prod.yml exec mp-browser alembic upgrade head