Автоматический сбор и анализ топовых объявлений с Kwork.ru для построения стратегии входа на фриланс-рынок
Парсит топ-50 объявлений по 11 категориям раздела «Разработка и IT» на Kwork.ru и автоматически строит Excel-отчёт с готовой стратегией входа для нового исполнителя.
Результат одного запуска:
- 550 объявлений собраны за ~5 минут
- Excel с 5 листами аналитики
- Готовые рекомендации: цена, заголовок, срок, ключевые слова
┌─────────────────────────────────────────────────────────────────┐
│ ЭТАП 1 — РАЗВЕДКА │
│ ✅ Готово │
├─────────────────────────────────────────────────────────────────┤
│ ✅ Найдены реальные API endpoints Kwork через DevTools │
│ ✅ Изучена структура JSON ответа (41 поле на кворк) │
│ ✅ Подтверждена работа без токена (сессионные куки) │
└─────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ ЭТАП 2 — СБОРЩИК ДАННЫХ │
│ ✅ Готово │
├─────────────────────────────────────────────────────────────────┤
│ ✅ parser.py — POST запросы к catalog_kworks_filters │
│ ✅ 11 категорий × 50 объявлений = 550 кворков │
│ ✅ Pydantic-модели для валидации данных │
│ ✅ Промежуточное сохранение в raw_data.json │
│ ✅ Логирование прогресса и errors.log │
└─────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ ЭТАП 3 — АНАЛИТИКА │
│ ✅ Готово │
├─────────────────────────────────────────────────────────────────┤
│ ✅ Лист raw_data — все 550 объявлений │
│ ✅ Лист by_subcategory — агрегация по 11 категориям │
│ ✅ Лист top_patterns — топ-10 + частотный анализ заголовков │
│ ✅ Лист correlations — корреляция Пирсона с популярностью │
│ ✅ Лист strategy — готовые рекомендации для новичка │
└─────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ ЭТАП 4 — КЛЮЧЕВЫЕ ВЫВОДЫ │
│ ✅ Готово │
├─────────────────────────────────────────────────────────────────┤
│ │
│ Топ-фактор успеха: Бейдж «Выбор Kwork» (r = 0.35) │
│ Лучшие ниши: ИИ-боты, Telegram Mini Apps │
│ Медиана отзывов: 40–60 (рынок молодой — легко зайти) │
│ Входная цена ИИ: 7 600 ₽ (медиана топа ~8 000 ₽) │
│ Входная цена TMA: 4 800 ₽ (медиана топа ~7 000 ₽) │
│ │
└─────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ ЭТАП 5 — СОЗДАНИЕ КВОРКОВ │
│ 🔄 В процессе │
├─────────────────────────────────────────────────────────────────┤
│ ✅ Написаны заголовки и описания для 2 кворков │
│ ✅ Определена стратегия портфолио │
│ 🔄 Анализ топовых портфолио конкурентов │
│ ⏳ Публикация кворков на Kwork │
└─────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ ЭТАП 6 — ПЕРВЫЕ ЗАКАЗЫ │
│ ⏳ Планируется │
├─────────────────────────────────────────────────────────────────┤
│ ⏳ Первые 5 заказов по сниженной цене → отзывы │
│ ⏳ Выход на медианную цену рынка │
│ ⏳ Получение бейджа «Выбор Kwork» │
└─────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ ЭТАП 7 — АВТОМАТИЗАЦИЯ ПРОДАЖ │
│ ⏳ Планируется │
├─────────────────────────────────────────────────────────────────┤
│ ⏳ Мониторинг новых заявок на бирже заказов │
│ ⏳ Авто-уведомления о подходящих проектах │
│ ⏳ Повторный парсинг раз в месяц — отслеживание рынка │
└─────────────────────────────────────────────────────────────────┘
| Категория | Медиана ₽ | Медиана отзывов | Срок (дн.) | % с бейджем |
|---|---|---|---|---|
| Доработка сайтов | 1 000 | 1 390 | 1 | 76% |
| Настройка сайтов | 1 500 | 1 175 | 2 | 46% |
| Исправление ошибок | 1 000 | 1 165 | 2 | 38% |
| Новый сайт | 17 000 | 1 195 | 7 | 44% |
| Копия сайта | 1 000 | 875 | 3 | 22% |
| Верстка по макету | 1 500 | 1 170 | 2 | 46% |
| Доработка верстки | 1 500 | 720 | 3 | 30% |
| Чат-боты | 2 750 | 1 120 | 3 | 58% |
| ИИ-боты | 8 000 | 40 | 3 | 14% |
| Telegram Mini Apps | 7 000 | 60 | 5 | 22% |
| Машинное обучение | 1 000 | 0 | 2 | 4% |
# 1. Клонировать репозиторий
git clone https://github.com/collertop/kwork-parser.git
cd kwork-parser
# 2. Установить зависимости
python3 -m pip install -r requirements.txt
# 3. Настроить куки (получить из браузера на kwork.ru)
cp .env.example .env
# Вставить KWORK_COOKIE в .env
# 4. Запустить парсер
python3 parser.py
# 5. Построить аналитику
python3 analyze.py
# → output/kwork_analysis.xlsxkwork_parser/
├── config.py # Категории и настройки
├── models.py # Pydantic-модели
├── parser.py # Сбор данных с Kwork API
├── analyze.py # Аналитика → Excel
├── storage.py # Сохранение JSON
├── requirements.txt
├── .env.example
└── output/
├── raw_data.json # Сырые данные
├── kwork_analysis.xlsx # Готовый отчёт
└── errors.log
Kwork не имеет публичного API. Проект использует внутренний endpoint сайта:
POST https://kwork.ru/catalog_kworks_filters/{parent}/{category}
Content-Type: multipart/form-data
page=1&s=groups&sDirection=ASC&sdisplay=table
Авторизация через сессионные куки браузера — токен не нужен.
| Фактор | Корреляция | Вывод |
|---|---|---|
| Бейдж «Выбор Kwork» | +0.35 | Сильная связь |
| Очередь заказов | +0.21 | Умеренная связь |
| Цена «от» | +0.18 | Слабая связь |
| Срок выполнения | -0.15 | Быстрее = лучше |
| Цена | -0.12 | Слабая связь |
Проект создан для анализа рынка перед выходом на Kwork.ru