Сегодня закончился первый хакатон по дата журналистике. Мы заняли на нём первое место. Проделали огромный объём работы за одни сутки. Я хотел бы рассказать как всё было.

Темой хакатона были финансы российских СМИ. Ежегодно государство поддерживает СМИ, поднимающие в своих материалах социально важные темы. Для этого проводится специальный конкурс. Главным критерием отбора получателей субсидий является «социальная значимость» проекта. Мы решили понять, что скрывается за формулировкой «социальная значимость» и какие темы оказались самыми популярными и «дорогими» в 2015 году.

Забегая вперёд, скажу, что ответ такой:
  • По опросам очень много россиян считают себя патриотами, но государство всё равно даёт больше всего денег на проекты про патриотизм.
  • 2015 год был годом литературы и на него пришлось 70 лет победы, поэтому «год литературы» и «историческая память в топе».
  • Субсидии, по идее, должны даваться на социально значимые проекты, «развитие Крыма», например, не очень в тему.
  • В целом складывается ощущение, что чаще пишут и читают об исторической памяти, чаще вспоминают достижения прошлых лет, в то время как на материалы об инновациях и новых технологиях государство выделяет меньше.



А теперь как мы пришли к этим выводам.

Роспечать публикует каждый год у себя на сайте списки субсидий для электронных СМИ и список субсидий для печатных СМИ. Первый список выглядит так:


У нас есть название организации, название и описание проекта. Для каждой строчки нужно определить группу, к которой относится субсидия и её объём в рублях. С классификацией всё просто: берём список тематик, которые публикует Роспечать и вручную размечаем ориентируясь на описания. Субсидий всего 2-3 сотни, поэтому разметку можно сделать за разумное время. С ценами сложнее: выделяем название издательства, например, «Радиовещательная Компания „Бурятия“», забиваем его в реестр субсидий, скачиваем для найденные записи и в каждой ищем название проекта, например, "Бессмертный полк. Мы помним" и выписываем цену. Для 75% проектов процедура отрабатывает автоматически. С остальными нужно разбираться вручную.


Со списком субсидий для печатных СМИ сложнее. Список выглядит так:


Записей уже около тысячи, поэтому ручная разметка происходит не так бодро. В списке нет названий организаций, а значит просто найти субсидии в реестре не получится. Выход есть: берём реестр СМИ, который публикует Роскомнадзор, он выглядит так:


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


Поэтому скачиваем все пдфы просматриваем их вручную и записываем цены в соответствующие ячейки. За 4-5 часов удалось провернуть операцию для 50% записей. В итоге получается две таблицы для электронных и печатных СМИ, в каждой строчке цены и категория. Если что эти таблицы можно скачать их нашего репозитория github.com/alexanderkuk/media-hack/tree/master/data

Дальше получаем график, который я показывал вначале:


И смотрим детализацию для некоторых интересных категорий:


В ходе ручной разметки неизбежно находятся странные проекты, на которые была потрачена куча денег:



Всего вышеописанного нам конечно показалось недостаточно и мы собрали ещё инфу по госконтрактам. На clearspending.ru мы нашли все контракты, в которых есть подстроки «пропаганда», «популяризация», «воспитание» или «имидж». Посмотрели, какие коды ОКПД чаще всего встречаются и немного их обобщили их с помощью реестра кодов:


Затем опять взяли реестр СМИ Роскомнадзора, собрали из него ИННы всех издательств, получилось примерно 32 000 штук, скачали для каждого из них выдачу clearspending.ru и оставили только контракты за 2015 год с одним из отобранных кодов ОКПД. Получилось примерно 3000 контрактов. Дальше их нужно было классифицировать. Мы составили набор простых правил вида:
    u'Инвалидность': [
        u'доступной среды для инвалидов и маломабильных групп',
        u'безбарьерной среды для инвалидов и маломабильных групп',
        u'социальной интеграции'
        ],
    u'Рабочие профессии': [
        u'рабочие профессии',
        
        u'популяризации рабочих профессий',
        ],
    u'Предпринимательство': [
        u'предпринимательство',
        u'молодой предприниматель',
        u'малое и среднее предпринимательство'
    ],
    u'ДТП': [
        u'участников дорожного движения',
        u'дорожно-транспортный травматизм',
        u'о состоянии проезда',
    ],


Прогнали их по всему списку и увидели интересное: в контрактах встречаются заказы на пропаганду толерантности, здорового образа жизни, достижений в сельском хозяйстве, однако большая часть заказных статей СМИ направлена на самопиар государственных органов:


Все наблюдения оформили в виде сайта zina.tilda.ws, код и данные выложили на github.com/alexanderkuk/media-hack

Комментарии (7)


  1. Tel
    29.02.2016 07:56
    +1

    Молодец, Александр. Не понятно почему ни кто не хвалит, но по моему отлично. Вот они — открытые данные, даже если они не слишком удобные.


  1. STLEON
    29.02.2016 10:51

    Молодец!


  1. pro100olga
    29.02.2016 11:41

    Круто! Результаты очень интересные, и объем работ поражает.
    Не представляю, как это можно сделать за сутки. Расскажите немного о том, сколько человек работает в команде, как распределены обязанности?


    1. alexkuku
      29.02.2016 19:40
      +2

      Нас было трое. За первый день мы собрали все данные. Начали в 12:00, закончили в 04:00. Получается ~16 часов, минус пара часов на перерывы. То есть никаких чудес, просто работу, которая в нормальном режиме занимает 2-3 дня, мы запихнули в один непрерывный отрезок времени. Я писал код и генерировал экселевские таблички, остальные по ним делали ручную разметку. Почти не было моментов, когда кому-то было нечем заняться. На второй день с 11:00 до 16:00 собранные данные превратились в статью. Соня писала текст, я строил ей графики, Лена всё это верстала в Тильде. То есть опять ничего особенного, 5 часов на такую работу даже многовато.


  1. eandr_67
    29.02.2016 12:37
    +2

    Интересная статья. Но когда я на первом же скриншоте вижу, как реальную историю подменяют откровенной пропагандой, это вызывает рвотный рефлекс.

    1. Вторая мировая война закончилась капитуляцией Японии — через 4 месяца после штурма Берлина. Даже в Великой отечественной войне последним сражением была не Берлинская, а Пражская операция. А уж назвать Берлинскую операцию финальным сражением Второй мировой войны — это на каких пещерных неучей рассчитано?

    2. Дмитрий Донской "защищал народ от ордынских завоевателей"? Спасибо, этих лживых сказочек я ещё 40 лет назад в школе наелся. Дмитрий Донской никогда не оспаривал своего вассального положения по отношению к хану Золотой Орды. А Мамай чингизидом не был и стать главой Орды даже теоретически не мог. Куликовская битва — это не борьба с Ордой, а разгром зарвавшегося темника, выгодный прежде всего хану Тохтамышу (через 2 года после Куликовской битвы захватившему Москву).

    Такой "патриотизм" заставляет вспомнить фразу о "последнем прибежище негодяев".


  1. KoGor
    29.02.2016 15:40

    Интересное исследование, много данных перелопатили, поэтому вдвойне обидно, что представлению результатов не уделили должного внимания. Даже если просто поменять ориентацию barchart'ов на горизонтальную, уже значительно лучше было бы.

    Последний график тоже "замечательный". Если вы хотели показать, что самопиар является целью 995 контрактов из 1075 (цифры на глаз привёл), то так бы и написали, график в таком случае не нужен. Если вы хотели дать возможность читателю сравнить точные значения, то такой график тоже не в тему, лучше уж таблица простая. Но если очень хотелось картинку, то поменяли бы шкалу, учитывая различия почти на два порядка между минимальным и максимальным значением.


  1. Doctorrr
    29.02.2016 18:19
    +2

    куча денег
    600 тысяч рублей
    на скриншотах — устаревший дизайн, но никак не содержание

    я не за ура-патриотизм, но хотя бы за объективность.
    что странного в финансировании областной газеты на ~$8k?