Техническое задание: Парсер тестовых данных учебного портала
Необходимо разработать автоматизированное решение для сбора структурированных данных с образовательного онлайн-портала.
Основная цель
Создание инструмента, который после авторизации в личном кабинете (по логину и паролю) сможет извлекать и сохранять тестовые задания вместе с вопросами и вариантами ответов из различных учебных курсов и тем.
Ключевые задачи
- Реализовать механизм авторизации на портале (работа с сессиями, cookies).
- Настроить обход структуры портала для обнаружения доступных курсов и разделов с тестами.
- Разработать парсер для извлечения следующих данных из каждого теста:
- Формулировка вопроса.
- Все доступные варианты ответов.
- Пометки о правильных ответах (если они видны в интерфейсе).
- Название темы и курса.
- Обеспечить сохранение данных в удобном структурированном формате (например, JSON, CSV или в базу данных).
- Сделать решение устойчивым к изменениям в структуре страниц (по возможности).
Требования к реализации
- Решение может быть реализовано в виде скрипта на популярном языке для парсинга (Python, JavaScript и т.д.).
- Код должен быть читаемым, хорошо документированным и готовым к дальнейшему сопровождению.
- Важно предусмотреть обработку возможных ошибок (проблемы с сетью, изменение логики сайта, отсутствие данных).
- Все конфиденциальные данные (учетные данные для входа, URL) должны выноситься в конфигурационный файл.
Результат работы
Исполнитель предоставляет рабочий скрипт (парсер), инструкцию по его настройке и запуску, а также пример выходных данных.