Имя: Пароль:
IT
 
Разбор/парсер адресов по КЛАДР/ФИАС
,
0 Garykom
 
гуру
01.03.21
12:09
Есть >100к адресов в формате:
163013, Архангельская обл, г. Архангельск, ул. Сульфатная, д. 9
165780, Архангельская обл, р-н. Ленский, с. Яренск, ул. Трудовая, д. 23

Надо разобрать на составляющие для сравнения с кривыми адресами типа
г. Архангельск    Пограничная     30    1
Как дешевше это сделать?

Да можно через дадату или яндекс но там платно и дорого выходит по 10 коп за адрес то
1 NorthWind
 
01.03.21
12:11
(0) я софтинку делал для такой задачи http://catalog.mista.ru/public/595478/
было порядка 3к адресов, порешал вопрос
2 Garykom
 
гуру
01.03.21
12:18
ясно короче самому написать проще, благо адреса чистые
3 NorthWind
 
01.03.21
12:23
В общем да, хотя если адресов много, понадобится некоторое время чтобы он их грыз достаточно качественно
4 Garykom
 
гуру
01.03.21
12:25
сча сначала попробую натравить УправлениеКонтактнойИнформациейСлужебный.СформироватьАдресПоПредставлению из БСП
5 Garykom
 
гуру
01.03.21
12:25
(4) Точнее КонтактнаяИнформацияПоПредставлению ибо оно экспортное
6 PLUT
 
01.03.21
12:32
(0) dadata.ru
7 Garykom
 
гуру
01.03.21
12:35
(6) дорого для больше 100 тысяч адресов
8 NorthWind
 
01.03.21
12:37
(5) Нормально разбирает?

Процедура КнопкаВыполнитьНажатие(Кнопка)
    
    Адрес = Новый Структура ("Представление, Поле1, Поле2, Поле3, Поле4, Поле5, Поле6, Поле7, Поле8, Записан");
    Адрес.Представление = "163013, Архангельская обл, г. Архангельск, ул. Сульфатная, д. 9";
    
    РазобратьПредставлениеСтроки (Адрес);
    
    Сообщить (Адрес.Поле1);
    Сообщить (Адрес.Поле2);
    Сообщить (Адрес.Поле3);
    Сообщить (Адрес.Поле4);
    Сообщить (Адрес.Поле5);
    Сообщить (Адрес.Поле6);
    Сообщить (Адрес.Поле7);
    Сообщить (Адрес.Поле8);
    
КонецПроцедуры


------------------------------

163013
Архангельская обл
Архангельск г
Сульфатная ул
9
9 PLUT
 
01.03.21
12:41
(7) в дадате на 100 тыс адресов примерно 10 тыс рублей (10 коп запись), есть пакетная обработка файлов

смотря какой процент ашипки допустим, в дадате декларируют 99,9% точность

понимает такие адреса: мск сухонска 11/-89
10 PLUT
 
01.03.21
12:42
+(9) а блин, недочитал в (0), там дадату всуе поминают
11 Garykom
 
гуру
01.03.21
12:44
(5) не хотит из БСП распознавать не в том слегка формате ((
12 Garykom
 
гуру
01.03.21
12:45
(8) Попробуй с
АдресСтрокой = "163038, Архангельская обл, р-н. Приморский, д. Кривляево, ул. Цветочная, д. 12Б";

Причем вместо "12Б" в другом файле может быть "д.12 кор.2"
Короче возни надолго
13 NorthWind
 
01.03.21
12:46
(12) Для первого варика
163038
Архангельская обл
Приморский р-н
Кривляево д
Цветочная ул
12Б
14 PLUT
 
01.03.21
12:47
(12) в итоге в пересчете на часы погромиста дадата дешевле и точнее получится
15 Garykom
 
гуру
01.03.21
12:47
(13) Ну технически это просто разделение по разделителям

Прикол что бывает как:
163038, Архангельская обл, р-н. Приморский, д. Кривляево, ул. Весенняя, д. 1

Так и тут же:
163038, Архангельская обл, р-н. Приморский, д. Кривляево, д. 9

И привет ((
16 NorthWind
 
01.03.21
12:50
ну во втором случае не будет улицы просто
163038
Архангельская обл
Приморский р-н
Кривляево д
9
17 NorthWind
 
01.03.21
12:51
в общем, если хочешь, могу тебе сбросить в почту тестовую обработку. Все кишки - в модуле объекта. Под УФ адаптируешь сам, скорее всего все поедет.
18 Garykom
 
гуру
01.03.21
12:53
(17) Та не надо не поможет один фиг свой парсер - сравнивалку писать
Судя по этим Б~2 и деревням с улицами и без
19 NorthWind
 
01.03.21
13:00
(15) так-то да, но нужно вдуплять, что теги могут записываться по-разному, могут быть до начала названия (ул. Ленина), могут быть после (Ленина ул.). Там пришлось потратить время. Но, правда, на ручной разбор пришлось бы потратить намного больше.
20 Garykom
 
гуру
01.03.21
13:01
(19) у меня в чистых адресах все с этим отлично
это выгрузка из ГИС ЖКХ и надо вычесть часть адресов но уже кривых
21 NorthWind
 
01.03.21
13:04
(20) у меня было недурно, но не сказать чтобы уж отлично. Поэтому механизм был полуавтоматический, с подсветкой косяков и возможностью ручного исправления перед записью в формате КЛАДР. Что, собственно, я потом и выложил на ИС.