Разработка парсеров сайтов

10 000 руб. за проект
24 января 2023, 16:46 • 11 откликов • 237 просмотров
Необходимо разработать парсеры открытых данных. Полученную информацию необходимо сохранять в БД. Пока видится какая то NoSQL база типа Mongo. Задача состоит из двух частей:

1. Получение данных, хранящихся в открытом виде (Excel, PDF по ссылке или на странице):

Модули необходимо реализовать в качестве автономного микросервиса. Данные из открытых реестров необходимо хранить в БД по объектно, т.е. в карточках отдельных физических и юридических лиц. При совпадении объектов в разных источниках во внутренней БД данные сводятся в одну карточку.

а. Реестр лиц, уволенных в связи с утратой доверия
На странице находится ссылка на файл Excel. Должна быть реализована ежедневная проверка файла по ссылке и в случае обновления файла необходимо обновлять данные в БД.
Формат исходных данных: порядковый номер, ФИО, наименование органа, наименование должности, статья НПА, дата акта, дата размещения информации

б. Реестр дисквалифицированных лиц ФНС
На странице при вводе пустого поискового запроса отображаются все записи реестра и ссылка на файл Excel. Должна быть реализована ежедневная проверка файла по ссылке и в случае обновления файла необходимо обновлять данные в БД.
Формат исходных данных: порядковый номер, номер записи РДЛ, ФИО, дата рождения, место рождения, наименование организации, ИНН организации, статья КоАП, наименование органа, ФИО судьи, должность судьи, срок дисквалификации, дата начала дисквалификации, дата истечения срока дисквалификации

в. Реестр физических лиц, в отношении которых имеются сведения об их причастности к экстремистской деятельности или терроризм
На странице при нажатии на "национальная часть" есть вкладки "организации" и "физические лица". Должна быть реализована ежедневный сбор содержимого по ссылке и в случае обновления данных необходимо обновлять данные в БД.
Формат исходных данных для организаций: наименование организации (и варианты написания), опционально ИНН и ОГРН
Формат исходных данных для физических лиц: ФИО, дата рождения, место рождения

г. Реестр иностранных агентов
На странице находится ссылка с названием "Реестр иностранных агентов" на файл PDF (содержит информацию как о физических, так и о юридических лицах в одной таблице). Должна быть реализована ежедневная содержимого по ссылке и в случае обновления данных необходимо обновлять данные в БД.
Формат исходных данных: порядковый номер, полное наименование/ФИО, дата рождения, ОГРН, ИНН, регистрационный номер, СНИЛС, адрес, информационный ресурс, полное наименование/ФИО участников, дата принятия, основания включения решения о включении, дата принятия решения об исключении.

д. Реестр лиц, находящихся в розыске как подозреваемые, обвиняемые, подсудимые и осужденные в совершении преступлений
На странице находятся списки с информацией о лицах. Необходимо организовать ежедневный сбор информации со страниц и в случае появления новых обновлять БД.
Формат исходных данных: фотография, ФИО, дата рождения, место рождения, статья УК, место заключения

2. Получение данных по запросу

Модули необходимо реализовать в качестве микросервиса с API (например, на базе FastAPI), который при получении запроса собирает данные с источников, вносит результат во внутреннюю БД и выдает результат на запрос.

а. Федеральный розыск МВД России
На странице находятся поля ввода фамилии, имени и отчества и даты рождения (раздельно), а также адреса электронной почты и кнопка поиска. Информация отправляется на почту. Необходим механизм как с почты забирать информацию. Есть капча.
Формат отправляемых данных: ФИО, дата рождения, капча
Формат получаемых данных: фотография, дата рождения, регион розыска, основания розыска, пол, национальность, приметы, описание ориентировки


б. Реестр лиц, находящихся в розыске по исполнительным производствам
На странице находится кнопка расширенного поиска, после нажатия на которую необходимо выделить все регионы (ссылка "Выделить все") и ввести данные в поле "Объект розыска". Перед выдачей результата есть капча.
Формат отправляемых данных: ФИО, капча
Формат получаемых данных: текстовая строка, содержащая указание на отсутствие сведений, либо таблица с данными

в. Реестр лиц, находящихся в розыске по подозрению в совершении преступлений
На странице находится кнопка расширенного поиска, после нажатия на которую необходимо выделить все регионы (ссылка "Выделить все") и ввести данные в поле "ФИО подозреваемого" и "Дата рождения подозреваемого". Перед выдачей результата есть капча.
Формат отправляемых данных: ФИО, дата рождения, капча
Формат получаемых данных: текстовая строка, содержащая указание на отсутствие сведений, либо таблица с данными


г. Красные карточки Интерпола (розыск для ареста)
На странице находятся поля ввода фамилии и имени (необходима транслитерация).
Формат отправляемых данных: ФИО
Формат получаемых данных: текстовая строка, содержащая указание на отсутствие сведений, либо таблица с данными


д. Желтые карточки (розыск пропавших)
На странице находятся поля ввода фамилии и имени (необходима транслитерация).
Формат отправляемых данных: ФИО
Формат получаемых данных: текстовая строка, содержащая указание на отсутствие сведений, либо таблица с данными

е. Розыск по санкциям (СБ ООН)
На странице находятся поля ввода фамилии и имени (необходима транслитерация).
Формат отправляемых данных: ФИО
Формат получаемых данных: текстовая строка, содержащая указание на отсутствие сведений, либо таблица с данными


ж. Проверка физического лица на статус плательщика налога на профессиональный доход (самозанятого)
На странице находятся поля ввода ИНН физического лица и даты предоставления сведений, а также кнопка поиска.
Формат отправляемых данных: ИНН физического лица, текущая дата
Формат получаемых данных: текстовая строка, содержащая сведения о статусе

з. Сведения о нарушениях арбитражных управляющих, допущенных в ходе ведения процедур банкротства
На странице находятся поля ввода ФИО и ИНН физического лица, а также кнопка поиска информации.
Формат отправляемых данных: ФИО, ИНН физического лица
Формат получаемых данных: текстовая строка, содержащая указание на отсутствие сведений, либо таблица формата: порядковый номер, фамилия, имя, отчество, номер судебного дела, дата решения суда, наименование суда, примененные меры, размер убытка, срок действия мер, наименование должника, местонахождение должника