Подпись | Описание | Тип данных |
Входная таблица | Таблица или файл .csv адресов или мест, которые будут геокодированы. | Table View |
Входной пакетный сервис | Сервис геокодирования на портале с поддержкой пакетного геокодирования, который будет использоваться для геокодирования таблицы адресов и мест. Примечание:Если сервис является пользовательским локатором или локатором ArcGIS StreetMap Premium, он должен быть опубликован в ArcGIS Enterprise on Kubernetes 11.5 или более новой версии с включенной функцией Пакетное геокодирование. | String |
Сопоставление полей адресов | Соответствие полей адреса, используемых локатором, полям входной таблицы или файла адресов. Укажите Одно поле, если полный адрес хранится во входной таблице или файле в одном поле, например, 303 Peachtree St NE, Atlanta, GA 30308. Укажите Несколько полей, если входные адреса разделены на несколько полей, например, Address, City, State и ZIP для общего адреса в США. Задайте Одно поле и поле страны, если полный адрес и страна разделены на несколько полей, например, Address (303 Peachtree St NE, Atlanta, GA 30308) и Country (USA). Некоторые локаторы поддерживают несколько входных полей адресов, таких как Address, Address2 и Address3. В этом случае компонент адреса может быть разделен на несколько полей, и поля адреса будут объединены во время геокодирования. Например, 100, Main St и Apt 140 в трех полях или 100 Main St и Apt 140 в двух полях в результате геокодирования образуют адрес в виде 100 Main St Apt 140. Если вы не сопоставляете дополнительное входное адресное поле, используемое локатором адресов, с полем во входной таблице или файле адресов, укажите, что сопоставление не требуется, выбрав <None> вместо имени поля. | Field Info |
Выходной класс объектов | Выходной геокодированный класс пространственных объектов. Примечание:Сохранение результатов в формате шейп-файлов не поддерживается в связи с ограничениями шейп-файлов. | Feature Class |
Страна или регион | Страна или страны, по которым будет проводиться поиск геокодированных адресов. Указав страну, вы, как правило, сможете увеличить точность геокодирования. Если страна не указана, геокодирование выполняется с использованием всех поддерживаемых стран локатора. Значение этого параметра будет переопределено, если вы зададите Одно поле и поле страны для параметра Сопоставление полей адресов. | String |
Предпочитаемый тип местоположения (Дополнительный) | Задает предпочитаемую выходную геометрию, которая будет возвращена для соответствий PointAddress. Если предпочтительное местоположение не существует в данных, будет возвращено расположение по умолчанию. См. веб-справку к ArcGIS REST API для получения подробной информации о параметре locationType для geocodeAddresses.
| String |
Категория (Дополнительный) | Ограничивает типы мест, которые ищет локатор, что исключает ложноположительные совпадения, нежелательные совпадения на уровне адреса или устраняет неоднозначность поиска по координатам. Этот параметр может помочь ускорить процесс поиска. Если категория не используется, геокодирование выполняется с использованием всех поддерживаемых категорий. Не для всех локаторов и не для всех стран поддерживаются все значения категорий. См. веб-справку к ArcGIS REST API для получения сведений о фильтрации категорий. | String |
Выходные поля (Дополнительный) | Задает выходные поля локатора, которые возвращаются в результатах геокодирования. Исходные имена полей из значения параметра Входная таблица будут сохранены, если заданы опции Только местоположение, Минимальные или Минимальные и пользовательские поля.
| String |
Краткая информация
Асинхронно геокодирует большие таблицы или файлы .csv адресов или мест с использованием REST API batchGeocode. Геокодированные результаты возвращаются в виде класса пространственных объектов и не требуют ArcGIS Pro для разбиения запроса на более мелкие пакеты.
При использовании этого инструмента геокодирование может быть изолировано и масштабировано на сервере независимо от других процессов. Например, при отправке задания на ArcGIS World Geocoding Service, для обработки файла будет назначено выделенное оборудование, что приведет к более быстрому отклику. Вы можете выбрать либо ArcGIS World Geocoding Service, либо сервис, размещенный в ArcGIS Enterprise on Kubernetes 11.5 или более новой версии в вашем настроенном кластере Kubernetes.
Примечание:
Для выполнения операций геокодирования с помощью ArcGIS World Geocoding Service необходима учетная запись организации ArcGIS, при этом расходуются кредиты. Учетная запись организации должна иметь достаточное количество кредитов для выполнения всего запроса на геокодирование.
Оценка кредитов отображается в верхней части инструмента на панели Геообработка, когда активным порталом является ArcGIS Online.
Использование
При использовании ArcGIS World Geocoding Service в качестве значения параметра Входной пакетный сервис входная таблица или файл должны содержать не менее 100 000 записей.
При использовании ArcGIS World Geocoding Service в качестве значения параметра Входной пакетный сервис значение параметра Входная таблица временно сохраняется на вашем портале ArcGIS Online до завершения задания. После завершения задания временный файл будет удален с портала.
Максимальное число записей, поддерживаемых этим инструментом, 50 миллионов. Если таблица превышает 50 миллионов записей, разделите ее на несколько таблиц с 50 миллионами или менее записей. Если входные данные представляют собой файл .csv, он должен использовать кодировку UTF-8 с указанием порядка байт (BOM).
Примечание:
Вы можете использовать стороннее приложение, такое как Microsoft Excel или Notepad++, чтобы добавить UTF-8 BOM в файл .csv.
Первая строка входного файла .csv используется как имена полей для выходного класса объектов, в добавление к полям, присоединяемым из локатора. Имена полей не могут содержать пробелы или специальные символы, кроме подчеркивания.
Примечание:
При использовании инструмента в Python поля значения параметра table_field_name должны быть в том же регистре, что и поля значения параметра input_address_field для сопоставления полей с использованием параметра address_fields.
Когда локатор публикуется на ArcGIS Enterprise on Kubernetes с включенной функцией Пакетное геокодирование, создаются два сервиса: GeocodeServer и GPServer. При использовании инструмента в Python, значение параметра in_batch_service должно быть GPServer, например, https://machinename.domain.com/server/rest/services/service_name/GPServer.
Результаты геокодирования сохраняются в той же пространственной привязке, что и сервис. Вы можете изменить пространственную привязку выходных данных, задав параметр среды Выходная система координат.
Результаты геокодирования будут содержать всю информацию о геокодировании, включая баллы, статус и сопоставленный адрес каждой записи, а также значения из исходной входной таблицы или файла. Результаты геокодирования этим инструментом содержат статический снимок исходной входной таблицы, поэтому, добавление или изменение значений в исходной таблице не приводит к обновлению результатов в выходном классе объектов. Перезапустите инструмент, чтобы создать выходной класс объектов, содержащий эти изменения.
Следующие параметры поддерживаются не для всех пакетных сервисов, используемых для значения параметра Входной пакетный сервис: Страна или регион, Предпочитаемый тип местоположения и Категория.
Этот инструмент не поддерживает выборки. Чтобы геокодировать часть таблицы, экспортируйте ту часть таблицы, которую вы хотите геокодировать, и запустите инструмент для новой таблицы меньшего размера.
Параметры
arcpy.geocoding.BatchGeocode(in_table, in_batch_service, address_fields, out_feature_class, country, {location_type}, {category}, {output_fields})
Имя | Описание | Тип данных |
in_table | Таблица или файл .csv адресов или мест, которые будут геокодированы. | Table View |
in_batch_service | Сервис геокодирования на портале с поддержкой пакетного геокодирования, который будет использоваться для геокодирования таблицы адресов и мест. Примечание:Если сервис является пользовательским локатором или локатором ArcGIS StreetMap Premium, он должен быть опубликован в ArcGIS Enterprise on Kubernetes 11.5 или более новой версии с включенной функцией Пакетное геокодирование. | String |
address_fields |
Каждое сопоставление полей в этом параметре имеет формат input_address_field, table_field_name, где input_address_field – это имя поля входного поля адреса, заданное локатором, а table_field_name – это имя соответствующего поля в таблице или файле адресов, которую вы хотите геокодировать. Укажите одно входное поле, если полный адрес хранится в одном поле, в значении in_table, например, 303 Peachtree St NE, Atlanta, GA 30308. Кроме того, вы можете указать несколько полей, если входные адреса разделены на несколько полей, таких как Address, City, Stateи ZIP для общего адреса в США. Вы также можете указать одно входное поле, где хранится полный адрес, например, 303 Peachtree St NE, Atlanta, GA 30308, а также поле, где хранится информация о стране, связанной с адресом, например, USA. Некоторые локаторы поддерживают несколько полей входных адресов, например Address, Address2 и Address3. В этом случае компонент адреса может быть разделен на несколько полей, и поля адреса будут объединены во время геокодирования. Например, 100, Main St и Apt 140 в трех полях или 100 Main St и Apt 140 в двух полях в результате геокодирования образуют адрес в виде 100 Main St Apt 140. Если вы не сопоставляете дополнительное входное поле адреса, используемое локатором адресов, с полем во входной таблице или файле адресов, укажите, что сопоставление не требуется, выбрав <None> вместо имени поля. | Field Info |
out_feature_class | Выходной геокодированный класс пространственных объектов. Примечание:Сохранение результатов в формате шейп-файлов не поддерживается в связи с ограничениями шейп-файлов. | Feature Class |
country [country,...] | Страна или страны, по которым будет проводиться поиск геокодированных адресов. Указав страну, вы, как правило, сможете увеличить точность геокодирования. Если страна не указана, геокодирование выполняется с использованием всех поддерживаемых стран локатора. Значение этого параметра будет переопределено, если поле в значении параметра in_table сопоставляется с полем Country в параметре address_fields. Укажите значение в виде двух- или трехсимвольного кода страны в списке, разделенном запятыми. См. столбец Поддерживаемые коды стран для использования входного значения. | String |
location_type (Дополнительный) | Задает предпочитаемую выходную геометрию, которая будет возвращена для соответствий PointAddress. Если предпочтительное местоположение не существует в данных, будет возвращено расположение ADDRESS_LOCATION по умолчанию. См. веб-справку к ArcGIS REST API для получения подробной информации о параметре locationType для geocodeAddresses.
| String |
category [category,...] (Дополнительный) | Ограничивает типы мест, которые ищет локатор, что исключает ложноположительные совпадения, нежелательные совпадения на уровне адреса или устраняет неоднозначность поиска по координатам. Этот параметр может помочь ускорить процесс поиска. Если категория не используется, геокодирование выполняется с использованием всех поддерживаемых категорий. Не для всех локаторов и не для всех стран поддерживаются все значения категорий. См. веб-справку к ArcGIS REST API для получения сведений о фильтрации категорий. | String |
output_fields (Дополнительный) | Задает выходные поля локатора, которые возвращаются в результатах геокодирования. Исходные имена полей из значения параметра in_table будут сохранены, если заданы опции LOCATION_ONLY, MINIMAL или MINIMAL_AND_USER.
| String |
Пример кода
В следующем скрипте показано, как использовать функцию BatchGeocode для геокодирования файла .csv с помощью ArcGIS World Geocoding Service и возврата MINIMAL output_fields в результатах геокодирования.
Примечание:
Если вы работаете с локаторами на своем портале, убедитесь, что выполнили вход и задали его в качестве активного в ArcGIS Pro. Для доступа к локатору, расположенному на портале, отличном от активного, можно выполнить аутентификацию через SignInToPortal.Примечание:
При использовании ArcGIS World Geocoding Service эта операция может потреблять кредиты.
import arcpy
# Set local variables
# Input is a local file
in_table = r"C:\data\customers.csv"
# Sign in to Portal
#arcpy.SignInToPortal("https://www.arcgis.com.", "MyUsername", "MyPassword")
in_batch_service = "https://geocode.arcgis.com/arcgis/rest/services/World/GPServer/BatchGeocode/"
# One way to generate the value for the field mapping parameter is to first run the tool in ArcGIS
# Pro and right-click the green success ribbon and click "Copy Python command"
# The table_field_name fields must be in the same case as the input_address_field fields.
address_fields = "'Address or Place' Address VISIBLE NONE;Address2 <None> VISIBLE NONE;Address3 <None> VISIBLE NONE;
Neighborhood <None> VISIBLE NONE;City City VISIBLE NONE;County <None> VISIBLE NONE;State State VISIBLE NONE;
ZIP ZIPCODE VISIBLE NONE;ZIP4 <None> VISIBLE NONE;Country <None> VISIBLE NONE"
geocode_result = r"C:\Mydata\results.gdb\geocode_results"
# Optional geocoding parameters. Only some are supported depending on the in_batch_service that you use.
country = USA
location_type = "ADDRESS_LOCATION"
category = "'Point Address'"
output_fields = "MINIMAL"
arcpy.geocoding.BatchGeocode(in_table, in_batch_service, address_fields, geocode_result,
country, location_type, category, output_fields)
В следующем скрипте показано, как использовать функцию BatchGeocode для геокодирования таблицы с помощью пакетного сервиса портала, с output_fields по умолчанию в результатах геокодирования.
Примечание:
Если вы работаете с локаторами на своем портале, убедитесь, что выполнили вход и задали его в качестве активного в ArcGIS Pro. Для доступа к локатору, расположенному на портале, отличном от активного, можно выполнить аутентификацию через SignInToPortal.import arcpy
# Set local variables
# Input is a local file
in_table = r"C:\data\mytables.gdb\restaurants"
in_batch_service = "https://machinename.domain.com/server/rest/services/service_name/GPServer/"
# One way to generate the value for the field mapping parameter is to first run the tool in ArcGIS
# Pro and right-click the green success ribbon and click "Copy Python command"
# The table_field_name fields must be in the same case as the input_address_field fields.
address_fields = "'Address or Place' Address VISIBLE NONE;Address2 <None> VISIBLE NONE;Address3 <None> VISIBLE NONE;
Neighborhood <None> VISIBLE NONE;City City VISIBLE NONE;County <None> VISIBLE NONE;State State VISIBLE NONE;
ZIP ZIPCODE VISIBLE NONE;ZIP4 <None> VISIBLE NONE;Country <None> VISIBLE NONE"
geocode_result = r"C:\My_Output.gdb\geocode_result"
# Optional geocoding parameters. Only some are supported depending on the in_batch_service that you use.
country = USA
location_type = "ROUTING_LOCATION"
category = "'Point Address'"
output_fields = "ALL"
arcpy.geocoding.BatchGeocode(in_table, in_batch_service, address_fields, geocode_result,
country, location_type, category, output_fields)
Параметры среды
Информация о лицензиях
- Basic: Обязательно Ваша учетная запись в ArcGIS Enterprise содержит права доступа на Выполнение анализа
- Standard: Обязательно Ваша учетная запись в ArcGIS Enterprise содержит права доступа на Выполнение анализа
- Advanced: Обязательно Ваша учетная запись в ArcGIS Enterprise содержит права доступа на Выполнение анализа