Locator

Краткая информация

Класс Locator позволяет изменять локаторы и использовать их для геокодирования. Геокодирование - это процесс, преобразующий описание местоположения (например, координаты, адрес или название места) в местоположение на поверхности Земли.

Модуль Geocoding был разработан для поддержки локаторов, созданных инструментом Создать локатор. У локаторов, созданных устаревшими инструментами, может оказаться ограниченный функционал, и они не будут поддерживать ряд свойств и параметров.

Обсуждение

Локатор - это переносимый файл, который используется для выполнения геокодирования, то есть процесса поиска адресов и мест на карте. Локаторы содержат снимок базовых данных, которые используются для геокодирования, а также индексы и знание локальных адресов, которые помогают вернуть наилучший результат в процессе геокодирования.

С локатором можно работать как с сервисом на вашем портале, например, ArcGIS World Geocoding Service, сервисом, работающем через подключение AGS к серверу или как с расположенном на диске файлом.

Синтаксис

Locator (path)
ПараметрОписаниеТип данных
path

A path to the locator.

String

Примечание:
Если вы работаете с локаторами на своем портале, убедитесь, что выполнили вход и задали его в качестве активного в ArcGIS Pro. Для доступа к локатору, расположенному на портале, отличном от активного, можно выполнить аутентификацию с помощью функции SignInToPortal.

Создает объект Locator из локатора, который хранится на диске.

import arcpy

# Create a new Locator object from a locator on disk
locator_path = r"C:\Locators\Atlanta.loc"
locator = arcpy.geocoding.Locator(locator_path)

Создает объект Locator из ArcGIS World Geocoding Service.

import arcpy

# Log in to Portal
#arcpy.SignInToPortal("https://www.arcgis.com", "MyUsername", "MyPassword")

# Create a new Locator object from the ArcGIS World Geocoding Service
locator_path = "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/ArcGIS World Geocoding Service"
locator = arcpy.geocoding.Locator(locator_path)

Создает объект Locator из подключения AGS.

import arcpy

# Create a new Locator object from a locator published to ArcGIS Server
locator_path = r"C:\AGS Files\MyAGSConnectionFile.ags\Atlanta"
locator = arcpy.geocoding.Locator(locator_path)

Создает объект Locator из элемента локатора на вашем портале ArcGIS Enterprise.

import arcpy

# Log in to Portal
#arcpy.SignInToPortal("https://www.myenterpriseportal.esri.com/portal", "MyUsername", "MyPassword")

# Create a new Locator object from the locator on your portal
locator_path = "https://myenterpriseportal.esri.com/server/rest/services/Geocode/Atlanta/GeocodeServer/Atlanta"
locator = arcpy.geocoding.Locator(locator_path)

Свойства

СвойствоОписаниеТип данных
capabilities
(только чтение)

Определяет возможности, доступные для локатора, опубликованного в виде сервиса в ArcGIS Enterprise или сервиса геокодирования ArcGIS Server. Доступны следующие возможности:

  • Geocoding - если это значение содержится в свойстве, сервис геокодирования поддерживает операции геокодирования - поиск местоположения по адресу или названию места.
  • ReverseGeocoding - если это значение содержится в свойстве, сервис геокодирования поддерживает операции обратного геокодирования - поиск ближайшего к данному местоположению места или адреса.
  • Suggest - если это значение содержится в свойстве, сервис геокодирования поддерживает автозаполнение предложений при вводе данных.
Этим свойством будет возвращена одна строка, содержащая все поддерживаемые возможности.

Это свойство поддерживается только сервисами геокодирования. Оно не поддерживается локальными локаторами, и при попытке его вызова для локального локатора будет возвращена ошибка.

String
categories
(чтение и запись)

Управляет точностью, ограничивая категории, которые могут быть возвращены локатором в набор. Если локатор с несколькими ролями поддерживает несколько типов адресов, можно изменить это свойство, чтобы исключить совпадения с определенными типами. Например, локатор может поддерживать соответствия уровней Адрес точки, Улица и номер дома, Название улицы и Почтовый адрес. Вы можете захотеть исключить совпадения с уровнем Почтовый адрес, так как считаете их слишком неточными для своих целей. Эта настройка позволяет контролировать точность получаемого результата.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
String
comprehensiveZoneMatch
(чтение и запись)

Указывает, будут ли для входных адресов, которые не совсем соответствуют имени города, возвращаться кандидаты из методов geocode и geocodeWithSuggest. По умолчанию – True.

Если для этого свойства установлено значение True, адреса будут сопоставлены, даже если имя города указано неверно. Если для этого свойства установлено значение False, совпадение возвращено не будет или получит значительно более низкую оценку. Подробнее об использовании свойства comprehensiveZoneMatch, см. в разделе Всеобщее сопоставление зон.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Boolean
defaultLocationType
(чтение и запись)

Задает предпочитаемую выходную геометрию для соответствия POINT_ADDRESS, возвращаемого методами geocode, geocodeWithSuggest и reverseGeocode.

Вариантами для этого параметра являются Routing_Location, представляющие сторону улицы, которую можно использовать для построения маршрутов и Address_Location, который представляет собой местоположение, находящееся на крыше, центроид участка или входную дверь адреса. Если предпочитаемое местоположение отсутствует в данных, вместо него будет возвращено местоположение Routing_Location по умолчанию. Для результатов геокодирования с Addr_type = PointAddress атрибутивные значения X, Y соответствуют координатам адреса, а значения DisplayX и DisplayY описывают координаты верхней точки крыши или центроида здания. Более подробно об использовании свойства defaultLocationType см. раздел Предпочитаемый тип местоположения.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
String
defaultSuggestCandidates
(чтение и запись)

Число предполагаемых кандидатов, возвращаемых по умолчанию методом suggest.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Integer
endOffset
(чтение и запись)

Расстояние в метрах, используемое для смещения результата в сторону от конца (в направлении к центру) объекта улицы для целей отображения. Более подробно об использовании свойства endOffset см. отступ от конца.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Double
intersectionConnectors
(чтение и запись)

Список соединителей пересечений, которые могут быть символами или словами, замещающими соединители пересечений по умолчанию. Используйте список, заключенный в кавычки через запятую, чтобы перечислить соединители пересечений, например, "&","|","//","@".

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
String
matchOutOfRange
(чтение и запись)

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

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

Свойство matchOutOfRange применяется только к локаторам, которые поддерживают и возвращают совпадения StreetAddress. Более подробную информацию о свойстве matchOutOfRange см. Сопоставить вне диапазона.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Boolean
maxCandidates
(чтение и запись)

Максимальное число кандидатов, возвращаемых методом geocode.

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

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Integer
maxSuggestCandidates
(чтение и запись)

Максимальное число кандидатов, возвращаемых методом suggest.

Если метод suggest работает слишком медленно, это может быть связано с тем, что локатор создает слишком большое число предположений. Чтобы ускорить работу, уменьшите это значение. Более подробную информацию о свойстве maxSuggestCandidates см. Максимальное число предполагаемых кандидатов.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Integer
minCandidateScore
(чтение и запись)

Минимальный балл, который должен быть у результата, чтобы он считался подходящим кандидатом для операции geocode. Минимальный балл кандидата для локатора — это значение между 0 и 100. Только кандидаты, превышающие минимальный балл для кандидата, возвращаются методом geocode.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Integer
minMatchScore
(чтение и запись)

Минимальный балл, который должен быть у результата при применении метода geocode, чтобы он считался подходящим.

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

Минимальное количество очков для совпадения может быть от 0 до 100. Наилучшее совпадение эквивалентно 100 баллам. Если вашим рабочим процессам требуются совпадающие адреса с высоким уровнем достоверности, установите для этого свойства более высокий порог. Более высокое значение гарантирует, что будут возвращены только совпадения самого высокого качества. Если вы хотите увеличить число адресов для сопоставления и при этом не придаете большого значения тому факту, что некоторые из адресов, возможно, могут быть сопоставлены некорректно, тогда вы можете использовать меньшее значение порога.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Integer
multilineInputFields
(только чтение)

Поля локатора для многострочного геокодирования. Это свойство возвращает список объектов arcpy.Field для нескольких входных многострочных полей локатора. При геокодировании таблицы многострочные поля таблиц геокодирования могут сопоставляться с объектом Field по свойству name.

Field
numberOfThreads
(чтение и запись)

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

Для оптимального использования этой настройки определите количество доступных ядер на компьютере, которое можно выделить для выполнения геокодирования. Для более быстрого выполнения геокодирования можно использовать все ядра компьютера. По умолчанию эта настройка имеет меньшее значение, что позволяет выполнять геокодирование на любом компьютере независимо от количества доступных ядер. Но вы можете задать большее количество используемых ядер, если известно, что они доступны. Его можно задать как Auto для определения ядер на вашем компьютере и оптимизации количества используемых потоков, или вы можете использовать указанное количество ядер для геокодирования, если знаете, что вам нужны другие ресурсы, доступные для других приложений.

Если планируется предоставить общий доступ к локатору в ArcGIS Enterprise, рекомендуется установить для этого свойства значение 4.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Integer
partialHouseNumberSuggestions
(чтение и запись)

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

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Boolean
partialSubaddressSuggestions
(чтение и запись)

Определяет, будут ли субадреса возвращены методом suggest, если введено только значение частичного субадреса. Дополнительные сведения о том, как использовать это свойство partialSubaddressSuggestions, см. в разделе Предложения для вложенных адресов.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Boolean
preferredLabelValues
(чтение и запись)

Это свойство позволяет настраивать выходные поля, возвращаемые в ответе от локатора, путем указания того, какие значения компонентов адреса будут включены в выходные поля. Свойство поддерживает одно значение или строку значений, разделенных запятыми, в качестве входных данных. Подробнее о том, как работает это свойство, см. в разделе Дополнительные опции настройки.

Возможные значения включают postalCity, localCity, matchedCity, primaryStreet и matchedStreet.

Примечание:

Можно включить только одно значение для обозначения города и одно значение для обозначения улицы.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
String
returnCollections
(чтение и запись)

Указывает, будут ли коллекции (категории точек интереса [POI]) возвращаться методом suggest при поиске POI. Подробнее об использовании свойства returnCollections см. в разделе Возвращать коллекции.

Настройка по умолчанию - True. Если для этого свойства установлено значение False, и первый символ связан с категорией, которая существует в данных, используемых для построения локатора на основе роли POI, название категории не будет включено в возвращаемый список кандидатов POI.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Boolean
returnInputLocation
(чтение и запись)

Указывает, является ли геометрия, возвращаемая методом reverseGeocode, исходной входной геометрией или геометрией возвращаемого совпадающего адреса.

По умолчанию – False. Если установлено True, результат reverseGeocode будет возвращен с исходной входной геометрией.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Boolean
reverseOutputFields
(чтение и запись)

Указывает выходные поля, которые будут возвращены методом reverseGeocode.

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

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
String
sideOffset
(чтение и запись)

Расстояние в метрах, используемое для смещения результата в сторону от и к объекту улицы для целей отображения. Более подробно об использовании свойства sideOffset см. Отступ от конца.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Double
singleLineInputField
(только чтение)

Поле локатора для однострочного геокодирования. Это свойство возвращает объект arcpy.Field, представляющий входное поле для локатора однострочного геокодирования. При геокодировании таблицы однострочное поле таблицы геокодирования может сопоставляться для объекта Field со свойством name.

Field
spatialReference
(только чтение)

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

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
String
subaddressAfterBaseAddressSuggestions
(чтение и запись)

Определяет, будут ли возвращены предложения для субадресов после ввода базового адреса. При выборе значения True также поддерживается ввод полного или частичного блока субадреса. Объект, представляющий базовый адрес, должен присутствовать в локаторе, чтобы увидеть список предлагаемых кандидатов для базового адреса. Дополнительные сведения о том, как использовать свойство subaddressAfterBaseAddressSuggestions, см. в разделе Советы по улучшению качества геокодирования.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Boolean
subaddressSummaryWithBaseAddress
(чтение и запись)

Определяет, будет ли возвращена сводная информация о разделах субадреса по адресу после ввода базового адреса. Сводная информация о подразделах может быть либо диапазоном значений подразделов, основанных на атрибутах в справочных данных, либо количеством подразделов по адресу, если в справочных данных имеется сочетание типов подразделов или несколько элементов субадреса, отображенных в локаторе. Объект, представляющий базовый адрес, должен присутствовать в локаторе, чтобы просмотреть сводную информацию о подразделах после ввода базового адреса. Дополнительные сведения о том, как использовать свойство subaddressSummaryWithBaseAddress, см. в разделе Советы по улучшению качества геокодирования.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
Boolean
supportedCategories
(только чтение)

Все категории, поддерживаемые локатором. Для дополнительной информации о поддерживаемых категориях для пользовательских локаторов и локаторов ArcGIS StreetMap Premium см. Поддерживаемые категории.

String
supportedCountries
(только чтение)

Страны, поддерживаемые локатором.

String
supportedRoles
(только чтение)

Роли, поддерживаемые локатором.

String
reverseGeocodeFeatureTypes
(чтение и запись)

Типы объектов, поддерживаемые методом reverseGeocode. Более подробную информацию о свойстве reverseGeocodeFeatureTypes см. Поддерживаемые при обратном геокодировании объекты.

Это свойство для сервисов геокодирования работает в режиме «только для чтения». Чтобы изменить это свойство в опубликованном локаторе, измените свойство локально и снова опубликуйте локатор.

Примечание:
Это свойство является свойством среды runtime. Оно не сохраняется в локаторе вне текущего сеанса, если не используется метод updateLocator.
String

Обзор метода

МетодОписание
geocode (searchText, forStorage, {preferredSearchLocation}, {countryCode}, {categories}, {locationType}, {outFields}, {maxResults}, {minScore}, {outputLanguageCode}, {preferredLabelValues}, {searchExtent})

Принимает адрес или местоположение в качестве входных данных и возвращает кандидаты на результат геокодирования. Кандидаты на результат – это точки, которые можно отобразить на карте или использовать в качестве входных данных для других анализов.

reverseGeocode (location, forStorage, {featureTypes}, {locationType}, {outputLanguageCode}, {preferredLabelValues})

Принимает объект PointGeometry в качестве входных данных и возвращает ближайший адрес, точку интереса или пересечение с этой точкой. Результат представляет собой обратный геокодированный результат, который содержит информацию о соответствующем адресе или местоположении, геометрическую информацию, включая координаты x и y, а также дополнительные атрибуты в зависимости от используемого Locator.

suggest (searchText, {preferredSearchLocation}, {countryCode}, {categories}, {maxResults}, {preferredLabelValues}, {returnCollections}, {searchExtent})

Генерирует предположения автоматического заполнения для неполного или частичного ввода данных пользователем. Отдельный результат предположения может быть перенесен в метод geocodeWithSuggest для создания точек, которые можно отобразить на карте или использовать в качестве входных данных для других анализов.

geocodeWithSuggest (suggestResult, forStorage, {preferredSearchLocation}, {countryCode}, {categories}, {locationType}, {outFields}, {maxResults}, {minScore}, {outputLanguageCode}, {preferredLabelValues}, {searchExtent})

Принимает единый suggest метод результата в качестве входных данных и возвращает кандидаты в результаты геокодирования. Кандидаты на результат – это точки, которые можно отобразить на карте или использовать в качестве входных данных для других анализов.

Рекомендуется передавать те же параметры в метод geocodeWithSuggest, которые вы передавали при создании результата метода suggest, позволившего получить правильные результаты.

updateLocator ()

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

Методы

geocode (searchText, forStorage, {preferredSearchLocation}, {countryCode}, {categories}, {locationType}, {outFields}, {maxResults}, {minScore}, {outputLanguageCode}, {preferredLabelValues}, {searchExtent})
ПараметрОписаниеТип данных
searchText

The address or place-name for which to find the location.

String
forStorage

Specifies whether the results will be stored. The default value is False, which indicates the results won't be stored, but they can be temporarily displayed on a map. If you store the results, in a database, for example, set this parameter to True.

This parameter only applies to geocoding requests made with ArcGIS World Geocoding Service. For all other locators, the parameter is ignored.

Примечание:
Applications are contractually prohibited from storing the results of geocoding operations using ArcGIS World Geocoding Service unless they make the request by passing the forStorage parameter with a value of True. For a locator using ArcGIS World Geocoding Service to be valid, you must sign in to ArcGIS Online with a valid organizational account. ArcGIS Online service credits are deducted from the organizational account for each geocode transaction.

Boolean
preferredSearchLocation

The origin point that will be used to prefer or boost geocoding candidates based on their proximity to the location. Candidates near the location are prioritized relative to those farther away.

PointGeometry
countryCode

A comma-delimited string of three-character country codes that limits geocoding results to the set of specified countries, which will improve the accuracy of geocoding in most cases. When no country is specified, geocoding with suggestions is performed using all countries supported by the locator.

If you are using ArcGIS World Geocoding Service, see the list of supported countries.

String
categories

A comma-separated list of categories that limits the types of places the locator searches, eliminating false positive matches and potentially speeding up the search process. See the REST API web help for details about category filtering.

String
locationType

Specifies the preferred output location that will be used forPointAddress matches. If the preferred location does not exist in the data, the default location will be returned instead. For geocode results with Addr_type=PointAddress, the x,y attribute values describe the coordinates of the address along the street, and the DisplayX and DisplayY values describe the rooftop, or building centroid, coordinates.

This parameter only affects the geometry, not the attribute values.

  • rooftopAn address location such as rooftop location, parcel centroid, or front door will be used.
  • streetA location close to the side of the street that can be used for vehicle routing will be used. This is the default.
String
outFields

The list of fields that will be returned as part of the attributes in the result. This parameter supports a single field name or a comma-delimited string of field names (with no spaces). To return the default output fields, outFields does not need to be passed. Use an asterisk ("*") to return all available output fields with the result. The output fields are described in What's included in the geocoded results.

String
maxResults

The maximum number of locations, up to the maximum number allowed by the locator. If no value is provided, all matching candidates up to the maximum specified in the Locator properties will be returned.

Integer
minScore

Limits the candidates that are returned to those with a score above the value set for this parameter. Valid values are between 0 and 100.

Integer
outputLanguageCode

The language in which the geocode results will be returned. Since addresses and places in many countries are available in more than one language, this ensures that results are returned in the expected language.

If you are using ArcGIS World Geocoding Service, see the list of supported countries for the language codes that are supported for those countries.

String
preferredLabelValues

Configures the output fields returned in a response from the locator by specifying the address component values that should be included in the output fields. The parameter supports a single value or a comma-delimited string of values as input. For more information about how this parameter works, see Additional tuning options.

Possible values include postalCity, localCity, matchedCity, primaryStreet, and matchedStreet.

Примечание:

Only one value for city labeling and one value for street labeling can be included.

String
searchExtent

An extent that limits the area that will be searched. All results that are returned outside of the specified extent will be excluded.

Extent
Возвращаемое значение
Тип данныхОписание
List

Выходными данными операции geocode является список объектов-словарей. Каждый объект-словарь соответствует одному результату геокодирования. Каждый результат геокодирования содержит информацию о совпадающем адресе или местоположении, информацию о геометрии, включая координаты x и y, и дополнительные атрибуты в зависимости от используемого объекта Locator и указанного значения outFields.

Примечание:
Если вы работаете с локаторами на своем портале, убедитесь, что выполнили вход и задали его в качестве активного в ArcGIS Pro. Для доступа к локатору, расположенному на портале, отличном от активного, можно выполнить аутентификацию через SignInToPortal.

Выполняется геокодирование для поиска расположения места или адреса с помощью локатора на диске.

import arcpy

# Create a new Locator object from a locator on disk
locator_path = r"C:\Locators\Atlanta.loc"
locator = arcpy.geocoding.Locator(locator_path)

# Geocode to find the location of an address
geocoding_candidates = locator.geocode("1670 W Peachtree St NE, Atlanta, GA 30309", False)

Выполняется геокодирование для поиска расположения места или адреса с помощью ArcGIS World Geocoding Service.

import arcpy

# Create a new Locator object from the ArcGIS World Geocoding Service
locator_path = "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/ArcGIS World Geocoding Service"
locator = arcpy.geocoding.Locator(locator_path)

# Geocode to find the location of an address
geocoding_candidates = locator.geocode("1670 W Peachtree St NE, Atlanta, GA 30309", True)

Выполняется геокодирование для поиска расположения места или адреса с помощью локатора, доступ к которому выполняется через подключение AGS.

import arcpy

# Create a new Locator object from a locator published to ArcGIS Server
locator_path = r"C:\AGS Files\MyAGSConnectionFile.ags\Atlanta"
locator = arcpy.geocoding.Locator(locator_path)

# Geocode to find the location of an address
geocoding_candidates = locator.geocode("1670 W Peachtree St NE, Atlanta, GA 30309", False)
reverseGeocode (location, forStorage, {featureTypes}, {locationType}, {outputLanguageCode}, {preferredLabelValues})
ПараметрОписаниеТип данных
location

A point for which you want to find the nearest address, point of interest, or intersection.

PointGeometry
forStorage

Specifies whether the results will be stored. The default value is False, which indicates the results won't be stored, but they can be temporarily displayed on a map. If you store the results, in a database, for example, set this parameter to True.

This parameter only applies to geocoding requests made with ArcGIS World Geocoding Service. For all other locators, the parameter is ignored.

Примечание:

Applications are contractually prohibited from storing the results of geocoding operations using ArcGIS World Geocoding Service unless they make the request by passing the forStorage parameter with a value of True. For a locator using ArcGIS World Geocoding Service to be valid, you must sign in to ArcGIS Online with a valid organizational account. ArcGIS Online service credits are deducted from the organizational account for each geocode transaction that includes the forStorage parameter with a value of True.

(Значение по умолчанию — False)

Boolean
featureTypes

The match types that will be returned. If only one value is provided, the search tolerance is adjusted.

For more information on how this parameter is used in ArcGIS World Geocoding Service, see the REST API documentation.

String
locationType

Specifies the preferred output location that will be used. If the preferred location does not exist in the data, the default location will be returned instead. For reverse geocoding results with Addr_type=PointAddress, the x,y attribute values describe the coordinates of the address along the street, and the DisplayX and DisplayY values describe the rooftop, or building centroid, coordinates. For more information about this parameter, see the Reverse Geocode REST API documentation.

This parameter only affects the geometry, not the attribute values.

  • rooftopAn address location such as rooftop location, parcel centroid, or front door will be used.
  • streetA location close to the side of the street that can be used for vehicle routing will be used. This is the default.
String
outputLanguageCode

The language in which the reverse geocode results will be returned. Since addresses and places in many countries are available in more than one language, this ensures that results are returned in the expected language.

If you are using ArcGIS World Geocoding Service, see the list of supported countries for the language codes that are supported for those countries.

String
preferredLabelValues

Configures the output fields returned in a response from the locator by specifying the address component values that should be included in the output fields. The parameter supports a single value or a comma-delimited string of values as input. For more information about how this parameter works, see Additional tuning options.

Possible values include postalCity, localCity, matchedCity, primaryStreet, and matchedStreet.

Примечание:

Only one value for city labeling and one value for street labeling can be included.

String
Возвращаемое значение
Тип данныхОписание
List

Результат обратного геокодирования содержит информацию о соответствующем адресе или местоположении, геометрическую информацию, включая координаты x и y, а также дополнительные атрибуты в зависимости от используемого объекта Locator, а также ключа Shape, когда этим значением является объект PointGeometry.

Примечание:
Если вы работаете с локаторами на своем портале, убедитесь, что выполнили вход и задали его в качестве активного в ArcGIS Pro. Для доступа к локатору, расположенному на портале, отличном от активного, можно выполнить аутентификацию через SignInToPortal.

Обратное геокодирование для поиска ближайшего места или адреса к заданному местоположению с помощью локатора на диске.

import arcpy

# Create a new Locator object from a locator on disk
locator_path = r"C:\Locators\Atlanta.loc"
locator = arcpy.geocoding.Locator(locator_path)

# Create input PointGeometry object
spatial_reference = arcpy.SpatialReference(4326)
point = arcpy.Point(-84.374, 33.797)
point_geometry = arcpy.PointGeometry(point, spatial_reference)

# Reverse geocode to find the nearest address or place to the point
reverse_geocode_result = locator.reverseGeocode(point_geometry, False)

Обратное геокодирование для поиска ближайшего места или адреса к заданному местоположению с помощью ArcGIS World Geocoding Service.

import arcpy

# Create a new Locator object from the ArcGIS World Geocoding Service
locator_path = "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/ArcGIS World Geocoding Service"
locator = arcpy.geocoding.Locator(locator_path)

# Create input PointGeometry object
spatial_reference = arcpy.SpatialReference(4326)
point = arcpy.Point(-84.374, 33.797)
point_geometry = arcpy.PointGeometry(point, spatial_reference)

# Reverse geocode to find the nearest address or place to the point
geocoding_candidates = locator.reverseGeocode(point_geometry, True)

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

import arcpy

# Create a new Locator object from a locator published to ArcGIS Server
locator_path = r"C:\AGS Files\MyAGSConnectionFile.ags\Atlanta"
locator = arcpy.geocoding.Locator(locator_path)

# Create input PointGeometry object
spatial_reference = arcpy.SpatialReference(4326)
point = arcpy.Point(-84.374, 33.797)
point_geometry = arcpy.PointGeometry(point, spatial_reference)

# Reverse geocode to find the nearest address or place to the point
geocoding_candidates = locator.reverseGeocode(point_geometry, False)
suggest (searchText, {preferredSearchLocation}, {countryCode}, {categories}, {maxResults}, {preferredLabelValues}, {returnCollections}, {searchExtent})
ПараметрОписаниеТип данных
searchText

The partial text that will be used to generate suggestions.

String
preferredSearchLocation

The origin point that will be used to prefer or boost suggestion candidates based on their proximity to the location. Candidates near the location are prioritized relative to those farther away.

PointGeometry
countryCode

A comma-delimited string of three-character country codes that limits suggestion results to the set of specified countries, which will improve the accuracy of suggestions in most cases. When no country is specified, suggestions will be generated from all countries supported by the locator.

If you are using ArcGIS World Geocoding Service, see the list of supported countries in Geocode data coverage.

String
categories

A comma-separated list of categories that limits the types of places the locator uses to generate suggestions, eliminating false positive matches and potentially speeding up the process. See the REST API web help for details about category filtering.

String
maxResults

The maximum number of suggestions that will be returned, up to the maximum number allowed by the locator. If no value is provided, all matching suggestions up to the maximum specified by the maxSuggestCandidates property in the Locator properties will be returned.

Integer
preferredLabelValues

Configures the output fields returned in a response from the locator by specifying the address component values that should be included in the output fields. The parameter supports a single value or a comma-delimited string of values as input. For more information about how this parameter works, see Additional tuning options.

Possible values include postalCity, localCity, matchedCity, primaryStreet, and matchedStreet.

Примечание:

Only one value for city labeling and one value for street labeling can be included.

String
returnCollections

Specifies whether collections (points of interest [POI] categories) will be returned when searching for POI. For more information about how to use the returnCollections parameter, see Return collections.

When this parameter is False, if the first character is associated with a category that exists in the data used to build a locator based on the POI role, the category name will not be included in the list of POI candidates returned.

(Значение по умолчанию — True)

Boolean
searchExtent

An extent that limits the area that will be searched. All results that are returned outside of the specified extent will be excluded.

Extent
Возвращаемое значение
Тип данныхОписание
List

Выходные данные метода suggest представляют собой массив объектов словаря. Каждый словарь представляет собой отдельный результат предположения. Каждый результат предположения содержит ключи text, magicKey и isCollection.

Чтобы использовать выходные данные этого метода, весь словарь по выбранному индексу списка следует перенести в метод geocodeWithSuggest.

Примечание:
Для получения дополнительных сведений о ключах словаря см. документацию REST API.

Примечание:
Если вы работаете с локаторами на своем портале, убедитесь, что выполнили вход и задали его в качестве активного в ArcGIS Pro. Для доступа к локатору, расположенному на портале, отличном от активного, можно выполнить аутентификацию через SignInToPortal.

Создайте предположения на основе неполной строки ввода пользователем с помощью локатора на диске.

import arcpy

# Create a new Locator object from a locator on disk
locator_path = r"C:\Locators\Atlanta.loc"
locator = arcpy.geocoding.Locator(locator_path)

# Generate suggestions from partial user input
suggestion_candidates = locator.suggest("1670 w peach")

Создайте предположения на основе неполной строки ввода пользователем с помощью ArcGIS World Geocoding Service.

import arcpy

# Create a new Locator object from the ArcGIS World Geocoding Service
locator_path = "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/ArcGIS World Geocoding Service"
locator = arcpy.geocoding.Locator(locator_path)

# Generate suggestions from partial user input
suggestion_candidates = locator.suggest("1670 w peach")

Создайте предположения на основе неполной строки ввода пользователем с помощью локатора, доступ к которому осуществляется через подключение AGS.

import arcpy

# Create a new Locator object from a locator published to ArcGIS Server
locator_path = r"C:\AGS Files\MyAGSConnectionFile.ags\Atlanta"
locator = arcpy.geocoding.Locator(locator_path)

# Generate suggestions from partial user input
suggestion_candidates = locator.suggest("1670 w peach")
geocodeWithSuggest (suggestResult, forStorage, {preferredSearchLocation}, {countryCode}, {categories}, {locationType}, {outFields}, {maxResults}, {minScore}, {outputLanguageCode}, {preferredLabelValues}, {searchExtent})
ПараметрОписаниеТип данных
suggestResult

The output from the suggest method. The suggestion result is a dictionary that contains text, magicKey, and isCollection keys and is used to locate an address or place.

To learn more about the keys included in the suggestion result dictionary objects, see the REST API documentation.

Dictionary
forStorage

Specifies whether the results will be stored. The default value is False, which indicates the results won't be stored, but they can be temporarily displayed on a map. If you store the results, in a database, for example, set this parameter to True.

This parameter only applies to geocoding requests made with ArcGIS World Geocoding Service. For all other locators, the parameter is ignored.

Примечание:
Applications are contractually prohibited from storing the results of geocoding operations using ArcGIS World Geocoding Service unless they make the request by passing the forStorage parameter with a value of True. For a locator using ArcGIS World Geocoding Service to be valid, you must sign in to ArcGIS Online with a valid organizational account. ArcGIS Online service credits are deducted from the organizational account for each geocode transaction that stores results.

Boolean
preferredSearchLocation

The origin point that will be used to prefer or boost geocoding candidates based on their proximity to the location. Candidates near the location are prioritized relative to those farther away.

PointGeometry
countryCode

A comma-delimited string of three-character country codes that limits geocoding results to the set of specified countries, which will improve the accuracy of geocoding in most cases. When no country is specified, geocoding with suggestions will be performed using all countries supported by the locator.

If you are using ArcGIS World Geocoding Service, see the list of supported countries.

String
categories

A comma-separated list of categories that limits the types of places the locator searches, eliminating false positive matches and potentially speeding up the search process. See the REST API web help for details about category filtering.

String
locationType

Specifies the preferred output geometry that will be used forPointAddress matches. If the preferred location does not exist in the data, the default location will be returned instead. For geocode results with Addr_type=PointAddress, the x,y attribute values describe the coordinates of the address along the street, and the DisplayX and DisplayY values describe the rooftop, or building centroid, coordinates.

This parameter only affects the geometry, not the attribute values.

  • rooftopAn address location such as rooftop location, parcel centroid, or front door will be used.
  • streetA location close to the side of the street that can be used for vehicle routing will be used. This is the default.
String
outFields

The list of fields that will be returned as part of the attributes in the result. This parameter supports a single field name or a comma-delimited string of field names (with no spaces). To return the default output fields, outFields does not need to be passed. Use an asterisk ("*") to return all available output fields with the result. The output fields are described in What's included in the geocoded results.

String
maxResults

The maximum number of locations that will be returned, up to the maximum number allowed by the locator. If no value is provided, all matching candidates up to the maximum specified by the maxCandidate property in the Locator properties will be returned.

Integer
minScore

Limits the candidates that are returned to those with a score above the value set for this parameter. Valid values are between 0 and 100.

Integer
outputLanguageCode

The language in which the geocode results will be returned. Since addresses and places in many countries are available in more than one language, this will ensure that results are returned in the expected language.

If you are using ArcGIS World Geocoding Service, see the list of supported countries for the language codes that are supported for those countries.

String
preferredLabelValues

Configures the output fields returned in a response from the locator by specifying the address component values that should be included in the output fields. The parameter supports a single value or a comma-delimited string of values as input. For more information about how this parameter works, see Additional tuning options.

Possible values include postalCity, localCity, matchedCity, primaryStreet, and matchedStreet.

Примечание:

Only one value for city labeling and one value for street labeling can be included.

String
searchExtent

An extent that limits the area that will be searched. All results that are returned outside of the specified extent will be excluded.

Extent
Возвращаемое значение
Тип данныхОписание
List

Выходными данными метода geocodeWithSuggest является список объектов-словарей. Каждый словарь соответствует одному результату геокодирования. Каждый результат геокодирования содержит информацию о совпадающем адресе или месте, информацию о геометрии, в том числе координаты x и y, и дополнительные атрибуты в соответствии с используемым объектом Locator и указанным значением параметра outFields.

Примечание:
Если вы работаете с локаторами на своем портале, убедитесь, что выполнили вход и задали его в качестве активного в ArcGIS Pro. Для доступа к локатору, расположенному на портале, отличном от активного, можно выполнить аутентификацию через SignInToPortal.

Создаются предложения на основе неполной пользовательской строки и выполняется геокодирование с одним из предложений в качестве выходных данных этой операции, чтобы найти местоположение расположенным на диске локатором.

import arcpy

# Create a new Locator object from a locator on disk
locator_path = r"C:\Locators\Atlanta.loc"
locator = arcpy.geocoding.Locator(locator_path)

# Generate suggestions from partial user input
suggestion_candidates = locator.suggest("1670 w peach")

# Geocode using one of the suggestions generated as the output of the suggest 
# operation
geocoding_candidates = locator.geocodeWithSuggest(suggestion_candidates[0], False)

Создаются предложения на основе неполной пользовательской строки и выполняется геокодирование с одним из предложений в качестве выходных данных этой операции, чтобы найти местоположение с помощью ArcGIS World Geocoding Service.

import arcpy

# Create a new Locator object from the ArcGIS World Geocoding Service
locator_path = "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/ArcGIS World Geocoding Service"
locator = arcpy.geocoding.Locator(locator_path)

# Generate suggestions from partial user input
suggestion_candidates = locator.suggest("1670 w peach")

# Geocode using one of the suggestions generated as the output of the suggest 
# operation
geocoding_candidates = locator.geocodeWithSuggest(suggestion_candidates[0], True)

Создаются предложения на основе неполной пользовательской строки и выполняется геокодирование с одним из предложений в качестве выходных данных этой операции, чтобы найти местоположение локатором, доступ к которому выполняется через подключение AGS.

import arcpy

# Create a new Locator object from a locator published to ArcGIS Server
locator_path = r"C:\AGS Files\MyAGSConnectionFile.ags\Atlanta"
locator = arcpy.geocoding.Locator(locator_path)

# Generate suggestions from partial user input
suggestion_candidates = locator.suggest("1670 w peach")

# Geocode using one of the suggestions generated as the output of the suggest 
# operation
geocoding_candidates = locator.geocodeWithSuggest(suggestion_candidates[0], False)
updateLocator ()

Обновите свойства локатора на диске и сохраните изменения.

import arcpy
# Create a new Locator object from a locator on disk
locator_path = r"C:\Locators\Atlanta.loc"
locator = arcpy.geocoding.Locator(locator_path)
# Update the minimum match score property on the locator
locator.minMatchScore = 95
# Persist changes to the .loc file
locator.updateLocator()