Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 2 Следующий »

Извлечь адреса Версия 1 (Python)

Группа действий: Robin AI


Описание

Действие извлекает из указанного текста адреса. Каждый адрес сохраняется в виде словаря, где ключ – отдельный элемент адреса, а значения - извлеченные данные. 

Варианты значений для ключей словаря: 

Страна

АССР, УССР, УЗССР, ССР, СССР, Франция, ФРГ

Субъект Российской Федерации

федеральный округ, республика, край, область, автономный округ, автономная область

Муниципальное образование

Административно-территориальная единица

район

Населенный пункт

город, село, деревня, посёлок

Элемент планировочной структуры

совхоз

Элемент улично-дорожной сети

улица, проспект, проезд, переулок, площадь, шоссе, набережная, бульвар

Элемент объекта адресации

дом

Тип здания

корпус, строение

Тип помещения

офис, квартира

Если в одном предложении указаны страна, и город, а в другом предложении списком улица, дом, индекс, то есть в разных предложениях части одной сущности, то они извлекутся как разные адреса в отдельные словари.

Параметры

Входные параметры:

  • Текст - текст, из которого будут извлекаться адреса.
  • Без вида элемента адреса - параметр, с помощью которого в результирующем словаре будут указаны\не указаны вид элемента адреса. Пример с выключенным и включенным параметром:

  • Исходный вид элемента адреса - параметр, с помощью которого адрес будет представлен как в исходном тексте или записан как официальный полный вид элемента адреса. Например, с включенный параметром адрес "г. Нижний Новгород" так и будет записан, а если параметр отключен, то адрес в результате будет "Нижний Новгород".

Выходные параметры:

  • Результат - коллекция словарей с извлеченными адресами. Повторяющиеся в тексте адреса записываются в коллекции один раз.

Настройки

Свойство

Описание

Тип

Пример заполнения

Обязательность заполнения поля

Параметры

Текст

Текст, из которого будут извлечены адреса.

Robin.String

Школа Евгении расположена по адресу: Нижегородская область, г.Нижний Новгород ,ул.Ленина, д.100

Да

Без вида элемента адресаЕсли значение "true", то будет указано только значение элемента адреса. Если "false", в словаре будут записаны значение и вид элемента адреса.
Robin.BooleanTrueНет
Исходный вид элемента адресаЕсли значение "true", то вид элемента адреса будет указан как в исходном тексте. Если "false", в словаре будет записан официальный полный вид элемента адреса.Robin.BooleanTrueНет
Результаты

Результат

Коллекция словарей с извлеченными данными. Если один и тот же адрес встречается в тексте несколько раз, то в результирующей коллекции он будет записан один раз.

Robin.Collection



Особые условия использования 

Если в поданном тексте нет искомого поля, то оно вернется пустым. Словарь всегда создается с полным набором ключей, чтобы не возникало ошибки при обращении к любому ключу словаря.

Если одновременно отмечены параметры "Без вида элемента адреса" и "Исходный вид элемента адреса", то галочка у "Исходный вид элемента адреса" будет проигнорирована.

Если в одном предложении указаны страна, и город, а в другом предложении списком улица, дом, индекс, то есть в разных предложениях части одной сущности, то они извлекутся как разные адреса в отдельные словари, не дополняя друг друга.

Ключи словаря адресов:

  • Полный адрес
  • Страна
  • Субъект Российской Федерации
  • Муниципальное образование
  • Административно-территориальная единица
  • Населенный пункт
  • Элемент планировочной структуры
  • Элемент улично-дорожной сети
  • Элемент объекта адресации
  • Тип здания
  • Тип помещения
  • Почтовый индекс

В первый ключ "Полный адрес" попадает вся найденная строка с адресом, а остальные поля будут заполнены согласно ключам словаря.

Робот вернет пустую коллекцию словарей, если:

  • в исходном тексте не будет найдено ни одного элемента адреса, 
  • исходный текст на неподдерживаемом языке. На данный момент поддерживается только русский язык. 

Пример использования 

Задача: записать в текстовый файл извлеченные адреса из текста.

Текст: Школа Евгении расположена по адресу: Нижегородская область, г.Нижний Новгород ,ул.Ленина, д.100

Решение: воспользоваться действиями "Извлечь адреса", "Получить длину", "Вычитание", "Получить значение по индексу", "Получить значение", "Получить коллекцию ключей", "Записать в текстовый файл", циклом "Для".

Реализация:

  1. Собрать схему робота: Схема робота.
  2. Настроить параметры действия "Извлечь адреса". В поле "Текст" ввести нужный текст.

  3. Настроить параметры действия "Получить длину 1". В поле "Коллекция или массив" указать результат действия "Извлечь адреса".

  4. Настроить параметры действия "Вычитание 1". В поле "Первый операнд" указать результат действия "Получить длину 1". В поле "Второй операнд" указать "1".

  5. Настроить параметры действия "Для 1". В поле "Начальное значение" указать "0". В поле "Конечное значение" указать результат действия "Вычитание 2". В поле "Инкремент" указать "1".
  6. Настроить параметры действия "Получить значение по индексу 2". В поле "Коллекция" указать результат действия "Получить коллекцию ключей 1". В поле "Индекс" указать результат цикла "Для 1".
  7. Настроить параметры действия "Получить значение по индексу 3". В поле "Коллекция" указать результат действия "Получить значения 1". В поле "Индекс" указать результат цикла "Для 1".
  8. Настроить параметры действия "Записать текстовый файл 1". В поле "Файл" указать путь к текстовому файлу, куда будет записан результат. В поле "Данные" указать результат действия "Получить значение по индексу 2". В поле "Добавить" указать чекбокс = true. В поле "С новой строки" указать чекбокс = true.
  9. Настроить параметры действия "Записать текстовый файл 2". В поле "Файл" указать путь к текстовому файлу, куда будет записан результат. В поле "Данные" указать ":". В поле "Добавить" указать чекбокс = true. 
  10. Настроить параметры действия "Записать текстовый файл 3". В поле "Файл" указать путь к текстовому файлу, куда будет записан результат. В поле "Данные" указать результат действия "Получить значение по индексу 3". В поле "Добавить" указать чекбокс = true. 
  11. Заполнить параметры цикла "Для 2". В поле "Начальное значение" указать "0". В поле "Конечное значение" указать результат действия "Вычитание 1". В поле "Инкремент" указать "1".
  12. Заполнить параметры действия "Получить значение по индексу 1". В поле "Коллекция" указать результат действия "Извлечь адреса 1". В поле "Индекс" указать результат цикла "Для  2".
  13. Заполнить параметры действия "Получить значения 1". В поле "Словарь" указать результат действия "Получить значение по индексу 1".
  14. Заполнить параметры действия "Получить коллекцию ключей". В поле "Словарь" указать результат действия "Получить значение по индексу 1".
  15. Заполнить параметры действия "Получить длину 2". В поле "Коллекция или массив" указать результат действия "Получить значения 1".
  16. Заполнить параметры действия "Вычитание 2". В поле "Первый операнд" указать результат действия "Получить длину 2". В поле "Второй операнд" указать "1".
  17. Нажать на кнопку "Старт" в верхней панели. 

Результат: 

Программный робот отработал успешно. Извлеченные адреса записались в текстовый файл.

Текстовый файл:


  • Нет меток