lawmon.datacoon.io - система для мониторинга законопроектов Государственной Думы. В репозитории содержатся выгрузка данных и таблицы с коэффициентами, актуальные на 26 марта 2019 года. Также к базе есть доступ по API. Структура данных и методы работы описаны ниже.
С помощью API можно получить доступ к:
- Законопроектам
- Стадиям рассмотрения законопроектов
- Инициаторам
Получить информацию о 100 последних законопроектах:
http://lawmon.datacoon.io/api/lawmaking_app_bills
Получить информацию о законопроекте по номеру:
http://lawmon.datacoon.io/api/lawmaking_app_bills?filter[where][num]=num
Структура полученного json:
id - ID
num (str) - Номер законопроекта
name (str) - Название
initiator (str) - Инициаторы
form (str) - Форма
responsible (str) - Ответственный комитет
law_field (str) - Отрасль законодательства
law_theme (str) - Тематический блок законопроектов
profile (str) - Профильный комитет
gov_conclusion (boolen) - Заключение Правительства РФ на законопроект (требуется или нет)
subject_matter (str) - Предмет ведения
is_programm (str) - Принадлежность к примерной программе
docs_intro (str) - Пакет документов при внесении (url)
Initiator_list (list) - список ID инициаторов (для поиска по инициатору)
Получить 100 последних действий:
http://lawmon.datacoon.io/api/lawmaking_app_actions
Получить все стадии по номеру законопроекта:
http://lawmon.datacoon.io/api/lawmaking_app_actions/?filter[where][lawmakingobject_num]=num
Структура полученного json:
id - ID
action_name (str) - Название
stage_id (str) - Стадия
substage_id (str) - ID подстадии
lawmakingobject_num (str) - Номер законопроекта
date_intro (date) - Дата совершения
Поиск по id (содержится в параметре initiator_list у законопроекта. Разбор списка id инициаторов можно сделать с помощью функции в файле split_initiators.py)
http://lawmon.datacoon.io/api/lawmaking_app_initiators/?filter[where][id]=id
Поиск по имени:
http://lawmon.datacoon.io/api/lawmaking_app_initiators/?filter[where][name]=Иванов Иван Иванович
Поиск по типу:
http://lawmon.datacoon.io/api/lawmaking_app_initiators/?filter[where][type_name]=type
Структура полученного json:
id - ID
name - Имя инициатора. Если человек, то в виде ФАМИЛИЯ ИМЯ ОТЧЕСТВО
type_name - группа инициатора из:
-
Законодательный (представительный) орган (недействующий);
-
Законодательный (представительный) орган;
-
Член Совета Федерации, сложившие полномочия;
-
Федеральный СПЗИ;
-
Депутат Государственной Думы;
-
Депутат Государственной Думы, сложивший полномочия;
-
Член Совета Федерации.
Файл lawmaking_hackathon.csv содержит посчитаные метрики для каждого законопроекта, прошедшего рассмотрение. Структура файла:
num - Номер законопроекта
initiator_list - список ID инициаторов в нашей базе
days_total - количество дней от внесения до конечного действия
days_per_stage_avg - среднее количество дней на одно действие с законопроектом
result_stage - конечный этап рассмотрения
stage_days_(1-8) - количество дней на стадию (от 1 до 8). Названия стадий есть в базе
stage_workdays_(1-8) - количество рабочих дней на стадию (от 1 до 8). Не включает выходные и государственные праздники. Не учитывает перенос выходных.
stage_break_days_(1-8) - количество дней между первым днем текущей стадии и последним днем в предыдущей.
stage_break_workdays_(1-8) - количество рабочих дней между первым днем текущей стадии и последним днем в предыдущей.
is_federal - кол-во инициаторов из списка федеральных СПЗИ
is_deputy - кол-во инициаторов из списка действующих депутатов (актуально для текущих законопроектов)
is_ex_deputy - кол-во инициаторов из списка депутатов, сложивших полномочия
is_ex_counsil_member - кол-во инициаторов из списка бывших членов Совета Федерации
is_council_member - кол-во инициаторов из списка членов Совета Федерации (актуально для текущих законопроектов)
is_legislature - кол-во инициаторов из списка Законодательных органов (действующих и недействующих)
Файл initiators_hackathon.csv содержит метрики для каждого инициатора законопроектов. Структура файла:
id - ID инициатора в базе
initiator_name - Имя/название
initiator_type - тип инициатора (см. в структуре lawmaking-db.csv)
results - список финальных стадий законопроектов,внесенных инициатором
wins - кол-во прошедших законопроектов
avg_result - средний показатель финальной стадии
wins_per - процент прошедших законопроектов в общем числе внесенных
В архиве lawmaking_dump_25_04_2019.gz содержится архив с базой данных. Для использования базы, необходимо скачать архив и восстановить в базу MongoDB на своем устройстве командой:
mongorestore --gzip --archive=/path/to/lawmaking_dump_25_04_2019.gz