Техническое задание: Безопасный парсинг данных
Цель проекта
Разработать скрипт для однократного сбора полной информации об объектах недвижимости из личного кабинета CRM. Основная задача - получить данные, минимизировав риски блокировки аккаунта.
Ключевые требования безопасности
- Максимальное количество одновременных потоков: 5.
- Использовать случайные задержки между запросами в диапазоне 3-10 секунд.
- Делать паузу не менее 30 секунд между сессиями.
- При получении HTTP-кодов 429 (Too Many Requests) или 403 (Forbidden) немедленно останавливать работу скрипта на 30 минут.
- Использовать актуальный User-Agent реального браузера.
- Обеспечить сохранение cookies в течение сессии.
- Реализовать корректную обработку CSRF-токенов.
Выходные данные и формат
Файл результата
- Формат: Excel (.xlsx).
- Имя файла: недвижимость_выгрузка_ДДММГГГГ.xlsx (дата подставляется автоматически).
Структура файла
- Лист "Объекты" - основная информация. Содержит поля:
- ID объекта, название, тип недвижимости.
- Статус, стоимость, площадь.
- Адрес, этаж/этажность, количество комнат.
- Описание, контактное лицо (менеджер), дата последнего обновления.
- В идеале - все доступные данные об объекте.
- Лист "Фотографии" - ссылки на изображения с обязательной привязкой к ID объекта.
Технические требования
- Язык программирования: Python.
- Обязательное детальное логирование всех этапов работы скрипта.
- Код должен быть читаемым и сопровождаемым.
План приемки работы
- Анализ: Изучение структуры личного кабинета целевого ресурса.
- Тестирование: Пробный запуск и сбор данных с 10-20 объектов для проверки корректности работы и безопасности.
- Финальный прогон и отчет:
- Готовый Excel-файл с данными.
- Полный лог выполнения скрипта.
- Сводный отчет с количеством успешно обработанных объектов.
Важное примечание
Приоритет №1 - безопасность учетной записи. Скрипт должен быть настроен на сверхосторожную работу и немедленное прекращение при малейших признаках возможной блокировки.