База всех населенных пунктов и регионов России
Мне для одного проекта понадобилось создать базу географических наименований России. Из всех источников подобной информации наиболее авторитетными мне показались 2:
- Эталонный справочник индексов объектов почтовой связи.
- И база окато которую можно взять с сайта главного научно-исследовательского вычислительного центра федеральной налоговой службы
Последняя показалась мне более простой, полной и менее избыточной, хотя наименований населенных пунктов там в четыре раза больше. Я выбрал ОКАТО, поскольку нашел хотя бы какое-то описание базы на википедии, а в почтовых индексах присутствовала совсем непонятная информация. В этой базе предстояло отсеять ненужные административные единицы от требуемых мне географических.
Отсев происходил в несколько этапов. Вначале я отобрал области, края и республики, т.е. верхний уровень иерархии. Затем взялся за города и поселки. Весь отсев проводился опытным путем. Выявляя закономерности, я отсеивал всю ненужную шелуху, типа муниципальных образований и районов крупных городов. Описывать закономерности не вижу смысла. Для каждого уровня классификации свои правила отсева административных единиц, которые можно посмотреть в исходном коде, в фале ниже. Отмечу что в итоговых файлах в регионах я создал идентификатор в первом поле, а в населенных пунктах ссылка на него в последнем поле, чтобы импортировать в БД принадлежность населенных пунктов к региону. Формат перевел в csv, в остальном формат данных остался прежним. Следует полагать, что в базе, скорее всего, есть ошибки. Если кто-то найдет, пишите в комментарии, буду править, ибо итоговое количество населенных пунктов вышло около 140 тысяч, а отследить их все крайне проблематично.
Итак, файл кода на питоне, с помощью которого проводился отсев и разбор, и 2 итоговых файла после разбора c регионами и нас. пунктами можно скачать здесь. Надеюсь моя работа, окажется, еще кому нибудь полезной.