/ru_address

Полная конвертация ФИАС XML в SQL дамп

Primary LanguagePython

ru_address: Конвертация БД ФИАС в SQL дамп

Утилита для командной строки, позволяющая сконвертировать схему, данные и ключи БД ФИАС для импорта в 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