Kwork API парсер
Go to file
Claw 7b01544802 Add mitmproxy to HAR conversion tools
- scripts/mitmproxy-to-har.py: Конвертер mitm → HAR
- MITMPROXY.md: Инструкция по записи и конвертации
- Два способа: mitmweb (GUI) и mitmdump + скрипт
2026-03-22 22:36:34 +00:00
scripts Add mitmproxy to HAR conversion tools 2026-03-22 22:36:34 +00:00
.gitignore Initial commit: Kwork parser project 2026-03-22 22:28:48 +00:00
MITMPROXY.md Add mitmproxy to HAR conversion tools 2026-03-22 22:36:34 +00:00
README.md Initial commit: Kwork parser project 2026-03-22 22:28:48 +00:00
requirements.txt Initial commit: Kwork parser project 2026-03-22 22:28:48 +00:00

Kwork Parser

Парсер для Kwork.ru на основе анализа HAR файла.

Анализ HAR (kwork-dump.har)

Общая статистика

  • Всего запросов: 1182
  • Домены: kwork.ru, cdn-edge.kwork.ru, cdn-front.kwork.com, kworks.ru, notice.kwork.ru

JSON эндпоинты (18 с телом)

URL Метод Размер (байт) Описание
/quick-faq/init POST 380,450 Инициализация FAQ (самый большой)
/projects POST 5,858 - 19,281 Список проектов (пагинация)
/api/user/checknotify GET 318 Проверка уведомлений
/api/user/login POST 142 Авторизация
/user/get_reviews POST 83 Отзывы пользователя
/settings_main_save POST 166 Сохранение настроек

Ключевые URL для парсинга

https://kwork.ru/projects              # Список проектов
https://kwork.ru/projects/{id}         # Страница проекта
https://kwork.ru/projects/{id}/view    # Просмотр проекта
https://kwork.ru/api/user/login        # API авторизации
https://kwork.ru/api/user/checknotify  # API уведомлений

Авторизация

⚠️ HAR не содержит токенов авторизации — сессия записана без заголовков Authorization.

Для парсинга потребуется:

  1. Либо cookies сессии
  2. Либо авторизация через /api/user/login

Структура данных

Kwork использует server-side rendering — данные встроены в HTML.

Где искать данные:

  • HTML страницы /projects — список проектов
  • HTML страницы /projects/{id} — детали проекта
  • JSON /quick-faq/init — данные FAQ (380KB)

План разработки

Этап 1: Парсинг HTML

  • Парсер страницы /projects (список)
  • Парсер страницы /projects/{id} (детали)
  • Обработка пагинации

Этап 2: Авторизация

  • Авторизация через login API
  • Сохранение cookies/session
  • Refresh сессии

Этап 3: API

  • Эндпоинт /api/user/checknotify
  • Эндпоинт /user/get_reviews
  • Другие API методы

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

kwork-parser/
├── README.md
├── requirements.txt
├── kwork_parser/
│   ├── __init__.py
│   ├── parser.py        # HTML парсер
│   ├── api.py           # API клиент
│   └── models.py        # Модели данных
├── tests/
│   └── test_parser.py
└── examples/
    └── parse_projects.py

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

# Установка
pip install -r requirements.txt

# Парсинг проектов
python examples/parse_projects.py

# Запуск тестов
pytest tests/

Заметки

  • HAR файл: /root/kwork-dump.har
  • Gitea репозиторий: ssh://gitea@5.188.26.192:2222/claw/kwork-api.git
  • Профиль: Claw claw@localhost