Утилита для командной строки, позволяющая сконвертировать схему, данные и ключи БД ФИАС для импорта в MySQL базу. Благодаря SAX парсеру потребляет небольшое количество ресурсов (не более 50 мб памяти).
Для начала необходимо скачать актуальную XSD схему и последнюю XML выгрузку с данными ФИАС, распаковать их в одну папку и запустить команду.
Все нужные файлы можно скачать с сайта-источника ФНС России https://fias.nalog.ru/Updates.aspx
Требуется установленный Python 3.6
$ git clone https://github.com/shadz3rg/ru_address.git && cd ru_address && python setup.py install
Установка пакета дает доступ к исполняемому файлу ru_address
.
$ ru_address --help Usage: ru_address [OPTIONS] SOURCE_PATH OUTPUT_PATH Подготавливает БД ФИАС для использования с SQL. XSD файлы и XML выгрузку можно получить на сайте ФНС https://fias.nalog.ru/Updates.aspx Options: --join TEXT Опция позволяет объединить весь дамп в один файл (по умолчанию отдельный файл для каждой таблицы) --source [xml|dbf] Формат источника данных, dbf пока не реализован --table-list TEXT Список таблиц для обработки, указывается строкой с разделением запятой --no-data Пропустить вставку данных --no-definition Пропустить создание схемы --encoding TEXT Кодировка для таблицы, по умолчанию utf8mb4 --version Show the version and exit. --help Show this message and exit.
Простейший вариант полная конвертация:
$ ru_address /путь/к/файлам /путь/для/сохранения --join=dump.sql
С ограниченным списком таблиц:
$ ru_address /путь/к/файлам /путь/для/сохранения --table-list=ACTSTAT,ADDROBJ,CENTERST