Целью проекта стала разработка инструмента для выгрузки структурированных данных о всероссийских олимпиадах и тестах. Портал обладает сложной структурой и динамической подгрузкой контента, что потребовало комбинированного подхода к парсингу. Реализованный алгоритм позволяет получать актуальную базу вопросов, вариантов ответов и метаданных для последующего анализа или использования в образовательных приложениях.
Для успешной реализации был выбран стек технологий, разделяющий задачи по этапам:
С помощью Selenium реализован обход динамических элементов и имитация действий пользователя для доступа к скрытому контенту и пагинации.
Библиотека Beautiful Soup (bs4) использовалась для высокоскоростного извлечения данных из полученного HTML-кода страниц.
Спроектирован модуль обработки данных на Python, который очищает текст от лишних тегов и форматирует его.
Организована система сохранения данных в формате JSON, что обеспечивает легкую интеграцию с любыми современными базами данных или веб-интерфейсами.
Создан надежный парсер, способный обрабатывать сотни страниц тестов и олимпиад в автоматическом режиме.
Получен структурированный набор данных, включающий названия дисциплин, тексты вопросов и правильные ответы.
Оптимизирована скорость сбора данных за счет грамотного сочетания имитации браузера и прямого разбора HTML-дерева.
Конечный JSON-файл готов к импорту в системы тестирования или мобильные тренажеры для подготовки к олимпиадам.
cloud.mail.ru/public/kHcs/7bHsaGsUj cloud.mail.ru/public/E8Ad/rxQ3MRS7h cloud.mail.ru/public/tmS4/rW2kpJqLT