# WB to Video Pipeline

Полный автоматизированный пайплайн генерации промо-видео из товаров Wildberries.

## Обзор

```
WB URL → Извлечение данных → Выбор фото → Nanobanana (очистка + resize) → Veo3 (генерация видео) → Готовое видео 16:9
```

## Этапы пайплайна

### 1️⃣ Извлечение данных о товаре

**Вход**: URL товара на WB
**Выход**: Название, описание, массив фото, цена

**Инструменты**:
- `scripts/wb_fetcher.py` — Playwright-based fetcher
- `scripts/wb_to_video_prompts.py --fetch` — полный автоматический режим

**Команда**:
```bash
python scripts/wb_to_video_prompts.py --fetch "https://www.wildberries.ru/catalog/202372804/detail.aspx"
```

### 2️⃣ Выбор лучшего фото

**Вход**: Массив фото товара
**Выход**: Одно фото для видео

**Критерии выбора**:
1. Продукт по центру, хорошее освещение
2. Минимум текстовых оверлеев
3. Простой фон (белый / нейтральный)
4. Продукт в естественном состоянии
5. Хорошая композиция (40-70% кадра)

**Автоматизация**: Используйте Claude Vision API для анализа фото

### 3️⃣ Обработка изображения (nanobanana.ai)

**Вход**: Выбранное фото
**Выход**: Чистое фото 16:9 без надписей

**Шаги**:
1. **Cleanup**: Удалить водяные знаки, ценники, бейджи
2. **Resize**: Расширить до 16:9, сохранить продукт по центру

**Промпт (combined)**:
```
1. Remove all text, watermarks, price tags, discount badges, and promotional overlays.
   Extend clean white background where text was removed. Preserve product details exactly.
2. Extend this image to 16:9 aspect ratio. Generate natural background on sides.
   Keep product centered and unchanged. Match lighting and style.
3. Ensure product remains perfectly centered and unchanged.
```

**Сервис**: [nanobanana.ai](https://nanobanana.ai) или аналоги

### 4️⃣ Генерация видео (Veo3)

**Вход**: Обработанное фото 16:9
**Выход**: Видео 8 сек, 1920x1080

**Варианты сцен**:

#### 🟢 A1: Static Beauty Shot (Low Risk)
Простая статичная сцена с медленным движением камеры
```
INT. STUDIO SETTING / SOFT DAYLIGHT
slow dolly push // 50mm lens
SUBJECT: product centered
ACTION: camera pushes toward product, light sweep reveals texture
MOOD: clean, minimal, commercial
--no text --no watermark --no morphing
```

#### 🟡 A2: Product with Rotation (Medium Risk)
Камера обходит продукт по дуге
```
slow arc camera movement // 50mm lens
ACTION: camera arcs around product revealing angles
--no warped surfaces --no product deformation
```

#### 🟠 B1: Two-Act Narrative (Medium-High Impact)
Двухактная структура: студия → lifestyle контекст
```
ACT 1 (2.5 sec): Studio hero shot
[TRANSITION: fade through white]
ACT 2 (5.5 sec): Product in natural use, aspirational setting
MOOD: curiosity → desire
```

**Рекомендация**: Генерируйте 3-5 вариантов каждой сцены, выбирайте лучший

**Генераторы**:
- Veo3 (Google AI Studio) — требует US VPN
- Kling — доступнее, ~$0.10-0.50 за 8 сек
- syntx.ai — подписка

### 5️⃣ Выбор финального видео

**Критерии**:
- Отсутствие артефактов (морфинг, деформация)
- Продукт остался узнаваемым
- Плавное движение
- Соответствие промпту

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

```bash
# 1. Установка
cd scripts
pip install -r requirements.txt
playwright install chromium

# 2. Генерация промптов
python wb_to_video_prompts.py --fetch "https://www.wildberries.ru/catalog/YOUR_PRODUCT_ID/detail.aspx" > output.json

# 3. Откройте output.json и следуйте инструкциям в нём
cat output.json
```

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

```
sm-video-gen/
├── PIPELINE.md                         ← вы здесь
├── README.md
├── CLAUDE.md                           ← инструкции для Claude
├── prompts/                            ← библиотека промптов
│   ├── banananano/cleanup_prompts.md
│   ├── claude_vision/product_to_video_prompt.md
│   └── video_generators/veo3_format.md
├── scripts/                            ← автоматизация
│   ├── wb_to_video_prompts.py          ← главный скрипт
│   ├── wb_fetcher.py                   ← Playwright fetcher
│   ├── requirements.txt
│   └── README.md
└── examples/                           ← примеры
    └── 202372804/                      ← example product
        ├── pipeline_output.json
        └── README.md
```

## Автоматизация (TODO)

- [ ] CLI tool с интерактивным режимом
- [ ] Claude Vision API интеграция для анализа фото
- [ ] Batch processing (обработка каталога товаров)
- [ ] API wrapper для nanobanana
- [ ] API wrapper для Veo3/Kling
- [ ] Web UI (Streamlit/Gradio)

## Примеры

См. [`examples/202372804/`](examples/202372804/) — полный пример с промптами и workflow.

## Контакты

Проект для демонстрации пайплайна генерации видео.
Разработка: январь 2026
