engineerklub | Дата: Воскресенье, 24.12.2023, 12:49 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 28530
Статус: Offline
| [Sкill6oх] Java-разработчик - модуль 19 - Практическая работа 19.13 - DataCollector
Тип работы: Задачи Сдано в учебном заведении: Skillbox
Описание: [Sкill6oх] Java-разработчик - модуль 19 - Практическая работа 19.13 - DataCollector
Напишите программу, которая будет собирать данные из разных источников и записывать два JSON-файла. Парсинг разных данных должен происходить в разных классах. Имена классов и их методов придумайте самостоятельно.
Комментарии: По мере реализации проверяйте работу каждого созданного класса. В программе должны быть следующие классы:
Класс парсинга веб-страницы. В нём должно происходить (реализуйте каждую операцию в отдельных методах): получение HTML-кода страницы «Список станций Московского метрополитена» с помощью библиотеки jsoup; парсинг полученной страницы и получение из неё следующих данных (создайте для каждого типа данных отдельные классы): линии московского метро (имя и номер линии, цвет не нужен); станции московского метро (имя станции и номер линии). Класс поиска файлов в папках. В методах этого класса необходимо реализовать обход папок, лежащих в архиве. Разархивируйте его и напишите код, который будет обходить все вложенные папки и искать в них файлы форматов JSON и CSV (с расширениями *.json и *.csv). Метод для обхода папок должен принимать путь до папки, в которой надо производить поиск. Класс парсинга файлов формата JSON. Изучите структуру JSON-файлов, лежащих в папках, и создайте класс(ы) для хранения данных из этих файлов. Напишите код, который будет принимать JSON-данные и выдавать список соответствующих им объектов. Класс парсинга файлов формата CSV. Изучите структуру CSV-файлов, лежащих в папках, и создайте класс(ы) для хранения данных из этих файлов. Напишите код, который будет принимать CSV-данные и выдавать список соответствующих им объектов. Класс, в который можно добавлять данные, полученные на предыдущих шагах, и который создаёт и записывает на диск два JSON-файла: со списком станций по линиям и списком линий (файл map.json) файл stations.json со свойствами станций Если каких-то свойств для станции нет, то в файле не должно быть соответствующих ключей. Обратите внимание на то, что данные в разных источниках могут пересекаться: Одни и те же станции у разных веток при парсинге с сайта. Это могут быть как разные станции (например, в Москве две станции “Арбатская” и две станции “Смоленская”), так и одни и те же, если это станции пересадок. Данные о датах открытия для одних и тех же станций в файлах. Если даты отличаются, то это разные станции с одинаковыми названиями. Разные значения глубины для одних и тех же станций. Здесь приоритетной считайте значения с наибольшей глубиной.
СКАЧАТЬ
|
|
| |