From bfb5641f38ad5f9032fa4b9bb2deb6ca0db00fa7 Mon Sep 17 00:00:00 2001 From: Zoviet Date: Sat, 6 Dec 2025 02:42:24 +0400 Subject: [PATCH] init --- README.md | 29 +++++++++++++-- cvrzu.csv | 102 +++++++++++++++++++++++++++++++++++++++++++++++++++++ cvrzu.json | 1 + install.sh | 10 ++++++ parser.lua | 68 +++++++++++++++++++++++++++++++++++ 5 files changed, 208 insertions(+), 2 deletions(-) create mode 100644 cvrzu.csv create mode 100644 cvrzu.json create mode 100644 install.sh create mode 100644 parser.lua diff --git a/README.md b/README.md index d1ba0c5..a40f51f 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,28 @@ -# rosreestr +# Классификатор видов разрешенного использования земельных участков Росреестра -Классификатор видов разрешенного использования земельных участков Росреестра \ No newline at end of file +Утвержден приказом Федеральной службы государственной регистрации, кадастра и картографии от 10 ноября 2020 г. N П/0412 и действует с 05.04.2021 взамен утратившего силу Классификатора видов разрешенного использования земельных участков утв. приказом Минэкономразвития России от 01.09.2014 N 540. + +В редакции, введенной в действие с 13 августа 2022 года приказом Росреестра от 23 июня 2022 года N П/0246; в редакции, введенной в действие с 30 марта 2025 года приказом Росреестра от 1 октября 2024 года N П/0303/24. + + +Разделитель csv - ";" + +Необходимые библиотеки для запуска парсера: + +``` +luarocks install luafilesystem +luarocks install lua-cURL +luarocks install iconv +luarocks install lua-cjson +luarocks install htmlparser + +``` + +Если lua-cURL не ставится штатно, то необходимо установить libcurl-dev и указать путь к заголовочному файлу. Пример для Debian и x86: + +``` +apt install libcurl4-gnutls-dev +find /usr -name 'curl.h' +luarocks install lua-cURL CURL_INCDIR=/usr/include/x86_64-linux-gnu/ + +``` diff --git a/cvrzu.csv b/cvrzu.csv new file mode 100644 index 0000000..5cb84f3 --- /dev/null +++ b/cvrzu.csv @@ -0,0 +1,102 @@ +4.0;;Предпринимательство +;4.1;Деловое управление +;4.2;Объекты торговли (торговые центры, торгово-развлекательные центры (комплексы) +;4.3;Рынки +;4.4;Магазины +;4.5;Банковская и страховая деятельность +;4.6;Общественное питание +;4.7;Гостиничное обслуживание +;4.8;Развлечение +;4.9;Служебные гаражи +;4.10;Выставочно-ярмарочная деятельность +3.0;;Общественное использование объектов капитального строительства +;3.1;Коммунальное обслуживание +;3.2;Социальное обслуживание +;3.3;Бытовое обслуживание +;3.4;Здравоохранение +;3.5;Образование и просвещение +;3.6;Культурное развитие +;3.7;Религиозное использование +;3.8;Общественное управление +;3.9;Обеспечение научной деятельности +;3.10;Ветеринарное обслуживание +6.0;;Производственная деятельность +;6.1;Разведка и добыча полезных ископаемых +;6.2;Тяжелая промышленность +;6.3;Легкая промышленность +;6.4;Пищевая промышленность +;6.5;Нефтехимическая промышленность +;6.6;Строительная промышленность +;6.7;Энергетика +;6.8;Связь +;6.9;Склад +;6.10;Обеспечение космической деятельности +;6.11;Целлюлозно-бумажная промышленность +;6.12;Научно-производственная деятельность +5.0;;Отдых (рекреация) +;5.1;Спорт +;5.2;Природно-познавательный туризм +;5.3;Деятельность в сфере охотничьего хозяйства +;5.4;Причалы для маломерных судов +;5.5;Поля для гольфа или конных прогулок +14.0;;Земельные участки, входящие в состав общего имущества собственников индивидуальных жилых домов в малоэтажном жилом комплексе +2.0;;Жилая застройка +;2.1;Для индивидуального жилищного строительства +;2.2;Для ведения личного подсобного хозяйства (приусадебный земельный участок) +;2.3;Блокированная жилая застройка +;2.4;Передвижное жилье +;2.5;Среднеэтажная жилая застройка +;2.6;Многоэтажная жилая застройка (высотная застройка) +;2.7;Обслуживание жилой застройки +1.0;;Сельскохозяйственное использование +;1.1;Растениеводство +;1.7;Животноводство +;1.12;Пчеловодство +;1.13;Рыбоводство +;1.14;Научное обеспечение сельского хозяйства +;1.15;Хранение и переработка сельскохозяйственной продукции +;1.16;Ведение личного подсобного хозяйства на полевых участках +;1.17;Питомники +;1.18;Обеспечение сельскохозяйственного производства +;1.19;Сенокошение +;1.20;Выпас сельскохозяйственных животных +13.0;;Земельные участки общего назначения +;13.1;Ведение огородничества +;13.2;Ведение садоводства +12.0;;Земельные участки (территории) общего пользования +;12.0.1;Улично-дорожная сеть +;12.0.2;Благоустройство территории +;12.1;Ритуальная деятельность +;12.2;Специальная деятельность +;12.3;Запас +10.0;;Использование лесов +;10.1;Заготовка древесины +;10.2;Заготовка живицы +;10.3;Заготовка и сбор недревесных лесных ресурсов +;10.4;Заготовка пищевых лесных ресурсов и сбор лекарственных растений +;10.5;Выращивание лесных плодовых, ягодных, декоративных растений, лекарственных растений +;10.6;Создание лесных плантаций и их эксплуатация +;10.7;Создание лесных питомников и их эксплуатация +;10.8;Создание и эксплуатация объектов лесоперерабатывающей инфраструктуры +;10.9;Осуществление научно-исследовательской деятельности, образовательной деятельности в лесах +;10.10;Осуществление рекреационной деятельности в лесах +8.0;;Обеспечение обороны и безопасности +;8.1;Обеспечение вооруженных сил +;8.2;Охрана Государственной границы Российской Федерации +;8.3;Обеспечение внутреннего правопорядка +;8.4;Обеспечение деятельности по исполнению наказаний +7.0;;Транспорт +;7.1;Железнодорожный транспорт +;7.2;Автомобильный транспорт +;7.3;Водный транспорт +;7.4;Воздушный транспорт +;7.5;Трубопроводный транспорт +;7.6;Внеуличный транспорт +11.0;;Водные объекты +;11.1;Общее пользование водными объектами +;11.2;Специальное пользование водными объектами +;11.3;Гидротехнические сооружения +9.0;;Деятельность по особой охране и изучению природы +;9.1;Охрана природных территорий +;9.2;Курортная деятельность +;9.3;Историко-культурная деятельность diff --git a/cvrzu.json b/cvrzu.json new file mode 100644 index 0000000..dea56a1 --- /dev/null +++ b/cvrzu.json @@ -0,0 +1 @@ +{"4.0":{"sub":{"4.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.2.html","name":"Объекты торговли (торговые центры, торгово-развлекательные центры (комплексы)"},"4.4":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.4.html","name":"Магазины"},"4.6":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.6.html","name":"Общественное питание"},"4.8":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.8.html","name":"Развлечение"},"4.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.3.html","name":"Рынки"},"4.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.1.html","name":"Деловое управление"},"4.5":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.5.html","name":"Банковская и страховая деятельность"},"4.10":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.10.html","name":"Выставочно-ярмарочная деятельность"},"4.7":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.7.html","name":"Гостиничное обслуживание"},"4.9":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.9.html","name":"Служебные гаражи"}},"name":"Предпринимательство","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-4.0.html"},"3.0":{"sub":{"3.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.2.html","name":"Социальное обслуживание"},"3.6":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.6.html","name":"Культурное развитие"},"3.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.1.html","name":"Коммунальное обслуживание"},"3.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.3.html","name":"Бытовое обслуживание"},"3.10":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.10.html","name":"Ветеринарное обслуживание"},"3.7":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.7.html","name":"Религиозное использование"},"3.9":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.9.html","name":"Обеспечение научной деятельности"},"3.4":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.4.html","name":"Здравоохранение"},"3.5":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.5.html","name":"Образование и просвещение"},"3.8":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.8.html","name":"Общественное управление"}},"name":"Общественное использование объектов капитального строительства","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-3.0.html"},"6.0":{"sub":{"6.4":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.4.html","name":"Пищевая промышленность"},"6.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.2.html","name":"Тяжелая промышленность"},"6.8":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.8.html","name":"Связь"},"6.11":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.11.html","name":"Целлюлозно-бумажная промышленность"},"6.6":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.6.html","name":"Строительная промышленность"},"6.5":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.5.html","name":"Нефтехимическая промышленность"},"6.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.3.html","name":"Легкая промышленность"},"6.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.1.html","name":"Разведка и добыча полезных ископаемых"},"6.9":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.9.html","name":"Склад"},"6.10":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.10.html","name":"Обеспечение космической деятельности"},"6.7":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.7.html","name":"Энергетика"},"6.12":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.12.html","name":"Научно-производственная деятельность"}},"name":"Производственная деятельность","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-6.0.html"},"5.0":{"sub":{"5.4":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-5.4.html","name":"Причалы для маломерных судов"},"5.5":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-5.5.html","name":"Поля для гольфа или конных прогулок"},"5.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-5.2.html","name":"Природно-познавательный туризм"},"5.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-5.3.html","name":"Деятельность в сфере охотничьего хозяйства"},"5.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-5.1.html","name":"Спорт"}},"name":"Отдых (рекреация)","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-5.0.html"},"14.0":{"sub":{},"name":"Земельные участки, входящие в состав общего имущества собственников индивидуальных жилых домов в малоэтажном жилом комплексе","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-14.0.html"},"2.0":{"sub":{"2.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-2.2.html","name":"Для ведения личного подсобного хозяйства (приусадебный земельный участок)"},"2.7":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-2.7.html","name":"Обслуживание жилой застройки"},"2.6":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-2.6.html","name":"Многоэтажная жилая застройка (высотная застройка)"},"2.5":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-2.5.html","name":"Среднеэтажная жилая застройка"},"2.4":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-2.4.html","name":"Передвижное жилье"},"2.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-2.3.html","name":"Блокированная жилая застройка"},"2.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-2.1.html","name":"Для индивидуального жилищного строительства"}},"name":"Жилая застройка","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-2.0.html"},"1.0":{"sub":{"1.14":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.14.html","name":"Научное обеспечение сельского хозяйства"},"1.18":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.18.html","name":"Обеспечение сельскохозяйственного производства"},"1.15":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.15.html","name":"Хранение и переработка сельскохозяйственной продукции"},"1.12":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.12.html","name":"Пчеловодство"},"1.20":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.20.html","name":"Выпас сельскохозяйственных животных"},"1.7":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.7.html","name":"Животноводство"},"1.17":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.17.html","name":"Питомники"},"1.19":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.19.html","name":"Сенокошение"},"1.16":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.16.html","name":"Ведение личного подсобного хозяйства на полевых участках"},"1.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.1.html","name":"Растениеводство"},"1.13":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.13.html","name":"Рыбоводство"}},"name":"Сельскохозяйственное использование","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-1.0.html"},"13.0":{"sub":{"13.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-13.1.html","name":"Ведение огородничества"},"13.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-13.2.html","name":"Ведение садоводства"}},"name":"Земельные участки общего назначения","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/Vri-kod-zemelnogo-uchastka-13.0.html"},"12.0":{"sub":{"12.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-12.3.html","name":"Запас"},"12.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-12.2.html","name":"Специальная деятельность"},"12.0.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-12.0.2.html","name":"Благоустройство территории"},"12.0.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-12.0.1.html","name":"Улично-дорожная сеть"},"12.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-12.1.html","name":"Ритуальная деятельность"}},"name":"Земельные участки (территории) общего пользования","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-12.0.html"},"10.0":{"sub":{"10.6":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.6.html","name":"Создание лесных плантаций и их эксплуатация"},"10.7":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.7.html","name":"Создание лесных питомников и их эксплуатация"},"10.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.3.html","name":"Заготовка и сбор недревесных лесных ресурсов"},"10.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.1.html","name":"Заготовка древесины"},"10.8":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.8.html","name":"Создание и эксплуатация объектов лесоперерабатывающей инфраструктуры"},"10.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.2.html","name":"Заготовка живицы"},"10.10":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.10.html","name":"Осуществление рекреационной деятельности в лесах"},"10.9":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.9.html","name":"Осуществление научно-исследовательской деятельности, образовательной деятельности в лесах"},"10.4":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.4.html","name":"Заготовка пищевых лесных ресурсов и сбор лекарственных растений"},"10.5":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.5.html","name":"Выращивание лесных плодовых, ягодных, декоративных растений, лекарственных растений"}},"name":"Использование лесов","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-10.0.html"},"8.0":{"sub":{"8.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-8.3.html","name":"Обеспечение внутреннего правопорядка"},"8.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-8.1.html","name":"Обеспечение вооруженных сил"},"8.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-8.2.html","name":"Охрана Государственной границы Российской Федерации"},"8.4":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-8.4.html","name":"Обеспечение деятельности по исполнению наказаний"}},"name":"Обеспечение обороны и безопасности","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-8.0.html"},"7.0":{"sub":{"7.6":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-7.6.html","name":"Внеуличный транспорт"},"7.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-7.2.html","name":"Автомобильный транспорт"},"7.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-7.1.html","name":"Железнодорожный транспорт"},"7.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-7.3.html","name":"Водный транспорт"},"7.4":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-7.4.html","name":"Воздушный транспорт"},"7.5":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-7.5.html","name":"Трубопроводный транспорт"}},"name":"Транспорт","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-7.0.html"},"11.0":{"sub":{"11.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-11.1.html","name":"Общее пользование водными объектами"},"11.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-11.2.html","name":"Специальное пользование водными объектами"},"11.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-11.3.html","name":"Гидротехнические сооружения"}},"name":"Водные объекты","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-11.0.html"},"9.0":{"sub":{"9.1":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-9.1.html","name":"Охрана природных территорий"},"9.2":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-9.2.html","name":"Курортная деятельность"},"9.3":{"url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-9.3.html","name":"Историко-культурная деятельность"}},"name":"Деятельность по особой охране и изучению природы","url":"https:\/\/classinform.ru\/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov\/vri-kod-zemelnogo-uchastka-9.0.html"}} \ No newline at end of file diff --git a/install.sh b/install.sh new file mode 100644 index 0000000..e669e23 --- /dev/null +++ b/install.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +apt install libcurl4-gnutls-dev +apt install lua5.1 +apt install luarocks +luarocks install luafilesystem +luarocks install lua-cURL CURL_INCDIR=/usr/include/x86_64-linux-gnu/ +luarocks install iconv +luarocks install lua-cjson +luarocks install htmlparser diff --git a/parser.lua b/parser.lua new file mode 100644 index 0000000..e7fcecc --- /dev/null +++ b/parser.lua @@ -0,0 +1,68 @@ +local htmlparser = require("htmlparser") +local lfs = require("lfs") +local cURL = require("cURL") +local iconv = require("iconv") +local json = require("cjson") +cd, err = iconv.new('UTF-8', 'WINDOWS-1251') + +-- настройки + +htmlparser_looplimit = 10000 -- лимит для парсинга + +local url = 'https://classinform.ru/classifikator-vidov-razreshennogo-ispolzovaniia-zemelnykh-uchastkov.html' -- исходный url + +local results = {} + +local csvfile = assert(io.open('cvrzu.csv', "w")) + +local function get(url) + local str='' + local headers = { + 'Content-type: text/html', + 'User-Agent: Mozilla/5.0' + } + local c = cURL.easy{ + url = url, + httpheader = headers, + writefunction = function(st) + str = str..st + end + } + local ok, err = c:perform() + c:close() + if not ok then return nil, err end + return cd:iconv(str) +end + +local function parse(url,first) + local result = {} + local root = htmlparser.parse(get(url)) + local divs = root:select(".full_width") + for _,div in ipairs(divs) do + local items = div:select("a") + if items and items[2] and string.find(items[1]:getcontent(),'%d+%.%d+') then + local code = items[1]:getcontent():gsub('- ','') + local name = items[2]:getcontent() + if not first then csvfile:write(';'..code..';'..name..'\n') end + result[code] = {name = name, url ='https:'..items[1].attributes["href"]} + end + end + return result +end + +local function save(filename,data) + local file = io.open(filename,'w') + file:write(tostring(data)) + file:close() +end + +results = parse(url,true) + +for code,data in pairs(results) do + csvfile:write(code..';;'..data.name..'\n') + results[code].sub = parse(data.url) +end + +csvfile:close() + +save('cvrzu.json',json.encode(results))