Skip to content

Spider/Parser for gathering the election data from Russian Election Committee website

Notifications You must be signed in to change notification settings

shipilev/cikrf-spider

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ПАУК ДЛЯ СБОРА ДАННЫХ С САЙТА ЦИК РФ
-------------------------------------------------------------------------------

Насколько мне известно, в коде отсутствуют баги, но это не означает, что их там
действительно нет. Поэтому проверяйте данные, перед тем как им доверять.

Перед тем как пользоваться роботами, их нужно собрать из исходных кодов в
выполняемые JAR файлы. Для этого вам потребуется Git, Maven, и установленная Java.
Пример ниже подразумевает запуск из командной строки.

1. Клонируем репозиторий себе в папку cikrf-spider:
 $ git clone https://github.com/shipilev/cikrf-spider.git cikrf-spider

2. Переходим в папку с исходниками:
 $ cd cikrf-spider

3. Запускаем сборку при помощи Maven:
 $ mvn clean install

В итоге в папке target/ должны появиться исполняемые JAR-ы cikrf-spider.jar и
cikrf-parser.jar -- ими уже можно пользоваться.

*** СКАЧИВАНИЕ ДАННЫХ ***

  Робот ходит по сайту ЦИКа и сваливает страницы первого/второго/третьего
  уровня в download/. Сами страницы представляют собой чистый HTML, так что при
  подозрении на ошибку в парсере, можно на них пристально посмотреть.

  Запуск паука для сбора:
    $ java -jar target/cikrf-spider.jar -r <URL>

  При запуске с "-h" можно увидеть настройки, если приспичит что-нибудь менять.
  Вам нужно будет указать корневой URL (основную страницу выборов на сайте ЦИК)
  для конкретных выборов. Ожидается ссылка на "Сводную Таблицу Результатов Выборов".

  Не скачивайте данные, если вам это не сильно нужно; сайт ЦИКа нежный и лишних
  электромагнитных воздействий не любит.

*** РАЗБОР ДАННЫХ ***

  Вторая часть робота берёт скачанные страницы и парсит их в CSV.

  Запуск:
    $ java -jar target/cikrf-parser.jar

  Опять же, парсеру можно переопределить место, куда генерить CSV.
  Воспользуйтесь "-h".

  Оно разродится несколькими CSV'шками, с разной степенью детализации:
    output-ciks.csv: данные с главной страницы
    output-tiks.csv: данные со страниц первого уровня (т.е. ТИКов)
    output-uiks-s.csv: данные с второго уровня (т.е. сумм по УИКам)
    output-uiks.csv: данные с третьего уровня (т.е. данных по отдельным УИКам)

  Парсер также печатает суммы, чтобы выявить ошибки скачивания и парсинга,
  в summary.log. Перед тем, как забуриваться в данные, посмотрите, сходятся ли
  там суммы между собой, и сходится ли это с главной страницей в ЦИКе.

About

Spider/Parser for gathering the election data from Russian Election Committee website

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published