Подготовка данных для проекта УИК (Саратов): различия между версиями
Vveco (обсуждение | вклад) |
Vveco (обсуждение | вклад) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 13: | Строка 13: | ||
В результате, на панели инструментов в Word 2003, а в Word 2010, во вкладке "Надстройки" появится кнопка запуска макроса: | В результате, на панели инструментов в Word 2003, а в Word 2010, во вкладке "Надстройки" появится кнопка запуска макроса: | ||
<center>[[Файл:2012-08-29_0610.png | <center>[[Файл:2012-08-29_0610.png|border|upright]]</center><br/><br/> | ||
Работа с макросом предельно проста - нужно загрузить файл Word с описанием УИКов и нажать иконку запуска макроса. В результате в EXCEL будет сформирован и открыт файл с необходимой информацией: | Работа с макросом предельно проста - нужно загрузить файл Word с описанием УИКов и нажать иконку запуска макроса. В результате в EXCEL будет сформирован и открыт файл с необходимой информацией: | ||
Строка 21: | Строка 21: | ||
* Телефон. | * Телефон. | ||
Дальше, на основе полученной информации, целесообразно сформировать файл следующего содержания: | Дальше, на основе полученной информации, целесообразно сформировать файл следующего содержания: | ||
<center>[[Файл:2012-09-01_2145.png | <center>[[Файл:2012-09-01_2145.png|border|upright]]</center><br/><br/> | ||
Описание полей: | Описание полей: | ||
*'''name_district''' - Наименование ТИК; | *'''name_district''' - Наименование ТИК; | ||
Строка 42: | Строка 42: | ||
<big>''В случае, если в исходном doc файле УИКи распределены по округам, так же по округам будет сформирован и выходной файл. Округа будут разделены пустой строкой.''</big> | <big>''В случае, если в исходном doc файле УИКи распределены по округам, так же по округам будет сформирован и выходной файл. Округа будут разделены пустой строкой.''</big> | ||
<center>[[Файл:2012-09-02 0823.png | <center>[[Файл:2012-09-02 0823.png|border|upright]]</center><br/><br/> | ||
'''Работа над ошибками''' | '''Работа над ошибками''' | ||
Основная причина возникновения ошибок - отсутствие или, наоборот, наличие лишнего знака абзаца в блоке данных. Блоком данных является описание одного УИКа: | Основная причина возникновения ошибок - отсутствие или, наоборот, наличие лишнего знака абзаца в блоке данных. Блоком данных является описание одного УИКа: | ||
<center>[[Файл:2012-09-02 0848.png]]</center><br/><br/> | <center>[[Файл:2012-09-02 0848.png|border|upright]]</center><br/><br/> | ||
Таким образом, все что нужно сделать для исправления ошибок - это добавить или убрать символ абзаца в описании тех УИК, которые выделены цветом. Для контроля, цветом также выделяются пропущенные УИКи (между ними в doc файле нужно добавить абзац!!).<br/><br/> | Таким образом, все что нужно сделать для исправления ошибок - это добавить или убрать символ абзаца в описании тех УИК, которые выделены цветом. Для контроля, цветом также выделяются пропущенные УИКи (между ними в doc файле нужно добавить абзац!!).<br/><br/> | ||
<center>[[Файл:2012-09-02 0804.png]]</center><br/><br/> | <center>[[Файл:2012-09-02 0804.png|border|upright]]</center><br/><br/> | ||
<center>[[Файл:2012-09-02 0809.png]]</center><br/><br/> | <center>[[Файл:2012-09-02 0809.png|border|upright]]</center><br/><br/> | ||
'''ПРИМЕЧАНИЕ:''' | '''ПРИМЕЧАНИЕ:''' | ||
Строка 59: | Строка 59: | ||
После того, как будет сформирован xls файл нужного состава, необходимо сохранить его в формате csv: | После того, как будет сформирован xls файл нужного состава, необходимо сохранить его в формате csv: | ||
<center>[[Файл:2012-09-02 1303.png]]</center><br/><br/> | <center>[[Файл:2012-09-02 1303.png|border|upright]]</center><br/><br/> | ||
В отличие от Open Office, MS Excel умеет сохранять файлы только в кодировке ANSI. Но нам для дальнейшей работы нужен csv файл в формате UTF-8. Для решения этой маленькой проблемы проще всего воспользоваться редактором Notepad++. Открываем в нем сохраненный csv файл и выбираем "Кодировки" - "Преобразовать в UTF-8 без BOM: | В отличие от Open Office, MS Excel умеет сохранять файлы только в кодировке ANSI. Но нам для дальнейшей работы нужен csv файл в формате UTF-8. Для решения этой маленькой проблемы проще всего воспользоваться редактором Notepad++. Открываем в нем сохраненный csv файл и выбираем "Кодировки" - "Преобразовать в UTF-8 без BOM: | ||
<center>[[Файл:2012-09-02 1917.png]]</center><br/><br/> | <center>[[Файл:2012-09-02 1917.png|border|upright]]</center><br/><br/> |
Текущая версия от 18:02, 8 октября 2012
Памятка
Оптимальный формат для подготовки информации по УИК, ОИК, ТИК для дальнейшей работы - это MS Excel или OO Calc. В данном проекте применялся Excel. Исходная информация по формированию избирательных комиссий может быть опубликована на официальных сайтах органов власти и избиркомов в разных форматах - pdf, doc, html и пр. Если есть возможность - лучше воспользоваться справочно-правовой системой и получить актуальную версию документа в формате MS Word. Как обрабатывать эти файлы на примере Саратова и Саратовской области. Для этого, нужно воспользоваться макросом, любезно предоставленным Александром (nerv). Описание логики парсера при извлечении данных - см. файл criteria_parse.doc.
В файле PasreUIK.doc приведен код для наглядности.
Инструкция по работе с макросом
1. Скачать файл шаблона PasreUIK.dot
2. Разместить шаблон в папку шаблонов Word:
Word 2003:
C:\Documents and Settings\"user name"\Application Data\Microsoft\Templates\
Word 2010 самый простой вариант - поместить файл шаблона в папку автозагрузки Word:
C:\Users\"user name"\AppData\Roaming\Microsoft\Word\STARTUP
В результате, на панели инструментов в Word 2003, а в Word 2010, во вкладке "Надстройки" появится кнопка запуска макроса:
Работа с макросом предельно проста - нужно загрузить файл Word с описанием УИКов и нажать иконку запуска макроса. В результате в EXCEL будет сформирован и открыт файл с необходимой информацией:
- Номер УИК;
- Адрес;
- Место нахождения УИК и помещения для голосования;;
- Телефон.
Дальше, на основе полученной информации, целесообразно сформировать файл следующего содержания:
Описание полей:
- name_district - Наименование ТИК;
- number_tik - Номер ТИК;
- number_oik - Номер ОИК;
- number_uik - Номер УИК;
- place - Населенный пункт;
- addr_vote - Адрес места для голосования;
- place_vote - Место нахождения УИК и помещения для голосования;
- tel - Телефон;
- boundaries - Границы участка;
- latitude - Широта;
- longitude - Долгота.
Главная задача этого этапа - получить файл унифицированной структуры для дальнейшего геокодирования и анализа результатов выборов.
Ошибки при работе макроса: После обработки doc файла макросом, в полученном xls файле будет часто встречаться слово "ЛОЖЬ". Пока, это не имеет отношения к результатам выборов, а просто является меткой для вас, что в этом месте в исходном doc файле имеется ошибка. Ошибки дополнительно выделены цветом. В случае, если в исходном doc файле УИКи распределены по округам, так же по округам будет сформирован и выходной файл. Округа будут разделены пустой строкой.
Работа над ошибками Основная причина возникновения ошибок - отсутствие или, наоборот, наличие лишнего знака абзаца в блоке данных. Блоком данных является описание одного УИКа:
Таким образом, все что нужно сделать для исправления ошибок - это добавить или убрать символ абзаца в описании тех УИК, которые выделены цветом. Для контроля, цветом также выделяются пропущенные УИКи (между ними в doc файле нужно добавить абзац!!).
ПРИМЕЧАНИЕ:
- Номер ТИК формируется в алфавитном порядке названий соответствующих районов. Как правило, нигде не публикуется. Приведен в таблице для удобства сортировки, в основном. На сайте избиркома список ТИКов по номерам можно найти в разделе "Результаты выборов" - "Данные об открытии помещений для голосования".
- В общем случае, формат представления описания УИКов, их адресов, границ, телефонов, может различаться. В этом случае, макрос может работать не корректно. Как вариант решения - пробовать привести блоки данных по УИКам в исходном doc файле к виду, соответствующему описанию в criteria_parse.doc, ну, или, модифицировать код макроса. Второй вариант решения - воспользоваться скриптами на языках Perl и Python из Проекта по УИКам Санкт-Петербурга, выложены сюда (тоже под лицензией CC0).
После того, как будет сформирован xls файл нужного состава, необходимо сохранить его в формате csv:
В отличие от Open Office, MS Excel умеет сохранять файлы только в кодировке ANSI. Но нам для дальнейшей работы нужен csv файл в формате UTF-8. Для решения этой маленькой проблемы проще всего воспользоваться редактором Notepad++. Открываем в нем сохраненный csv файл и выбираем "Кодировки" - "Преобразовать в UTF-8 без BOM: