Crear localizador (Geocodificación)

Resumen

Crea un localizador que puede encontrar la ubicación de una dirección o un lugar, convertir una tabla de direcciones o lugares en una colección de entidades de puntos o identificar la dirección de una ubicación de puntos.

Nota:

Los localizadores creados con esta herramienta se pueden utilizar en ArcGIS Pro 2.2 o versiones posteriores, Enterprise 10.6.1 o versiones posteriores y como un servicio de localizador en ArcMap. Es posible que no se admitan todas las funciones de localizador antes de Enterprise 10.7. Se aplicará según se agregue como función adicional a versiones más recientes del software. Los localizadores creados con esta herramienta no se pueden utilizar como un localizador local en ArcMap.

Uso

  • El rol del localizador define el tipo de datos que se utilizan (parcela, línea central de calle, postal, punto de interés, etc.) y proporciona los campos apropiados para crear el localizador y la información devuelta en los resultados de la geocodificación. Solo se enumerarán los roles admitidos por el valor País o región seleccionado junto con los campos de rol de localizador correspondientes.

    Nota:

    • Solo se puede utilizar una tabla principal por rol al crear un localizador con esta herramienta.
    • El rol de localizador Punto de interés (POI) sustituye a la tabla de alias de nombres de lugares, pero requiere una clase de entidad poligonal o de punto de topónimos junto con la dirección asociada en la tabla de atributos.

  • Los roles del localizador principal proporcionados con ArcGIS Pro permiten crear los siguientes tipos de localizadores comunes:

    • PointAddress: dirección de una calle basada en puntos que representan ubicaciones de casas y edificios. Incluye Subaddress, que se basa en puntos que representan ubicaciones de subdirecciones de casas y edificios, como suites, pisos o apartamentos.
    • Parcela: una dirección o nombre de parcela basadas en puntos o polígonos que representan una parcela de tierra que se considera un bien inmueble y puede incluir una o varias viviendas u otras estructuras que suelen tener una dirección y número de identificación de parcela asignados a ella, como 17 011100120063.
    • StreetAddress: dirección de una calle basada en calles donde el número de la casa se interpola de un rango de números. Incluye las intersecciones, el nombre de la calle, los bloques de calles y la extensión de la calle.
    • Punto de interés: divisiones administrativas, nombres de lugares, negocios, hitos y entidades geográficas, por ejemplo, Starbucks.
    • DistanceMarker: dirección de calle que representa la distancia lineal a lo largo de una calle, normalmente en kilómetros o millas, desde una ubicación de origen designada.
    • DistanceRange: tipo de marcador de distancia que representa valores de distancia interpolados a lo largo de la línea de centro de calle en función de las entidades de línea.
    • Postal: códigos postales, códigos postales con extensiones y localidades postales donde se deben usar datos de referencia de polígonos para obtener resultados de geocodificación inversa óptimos.
    • Localities: zonas o áreas administrativas como ciudades, vecindarios, estados, etc., donde se deben usar datos de referencia de polígonos para obtener resultados de geocodificación inversa óptimos.

  • La herramienta Crear localizador se puede utilizar para crear un localizador multirrol. El localizador multirrol permite combinar varios roles y capas de datos de referencia en un solo localizador para buscar varios tipos de ubicaciones a la vez. Si tiene varias capas del mismo tipo de geometría que se pueden asignar al mismo rol, es mejor fusionar las capas en una sola capa y utilizar la capa fusionada como datos de referencia primarios para el rol correspondiente.

    Más información sobre la combinación de varios roles en un solo localizador

  • Los localizadores creados con esta herramienta admiten búsquedas globales de coordenadas (MGRS, DD, UTM, etc.). Se debe incluir al menos una entidad en los datos de referencia primarios utilizados para crear el localizador. La compatibilidad con la búsqueda de coordenadas se deshabilita o habilita en Categorías que se admitirán, en la página Opciones de geocodificación del cuadro de diálogo Propiedades del localizador del localizador.

  • Las tablas y clases de entidad representadas como servicios son tipos de datos compatibles para usarlos como datos de referencia primarios y tablas de nombre alternativo.

  • Las tablas de nombres alternativos se pueden usar para todas los roles de localizador admitidos y se admiten nombres alternativos para las entidades de los datos de referencia primarios.

    Más información sobre las tablas de nombres alternativos

  • La salida de esta herramienta se puede usar como entrada de la herramienta Crear localizador de direcciones compuesto.

Parámetros

EtiquetaExplicaciónTipo de datos
País o región

Especifica dónde se aplicará la lógica de geocodificación específica del país a los datos de referencia para el localizador.

El valor predeterminado es la configuración regional del sistema operativo. Se puede especificar seleccionando <Como se define en los datos> en la lista y asignando uno de los valores de los datos de la asignación de campos o se puede aplicar a todo el dataset seleccionando uno en la lista.

Proporciona una plantilla de país que contiene los nombres de campo previstos que se muestran en el parámetro Asignación de campos para el país especificado del localizador que se va a crear.

  • <Como se define en los datos>Valor de código de país de tres caracteres definido en los datos de referencia de cada entidad
  • Samoa AmericanaSamoa Americana
  • AustraliaAustralia
  • AustriaAustria
  • BélgicaBélgica
  • CanadáCanadá
  • SuizaSuiza
  • AlemaniaAlemania
  • EspañaEspaña
  • FranciaFrancia
  • Gran BretañaGran Bretaña
  • GuamGuam
  • Islas Marianas del NorteIslas Marianas del Norte
  • Países BajosPaíses Bajos
  • Puerto RicoPuerto Rico
  • Islas Vírgenes de los EE. UU.Islas Vírgenes de los EE. UU.
  • Estados UnidosEstados Unidos
  • Islas Ultramarinas Menores de los Estados UnidosIslas Ultramarinas Menores de los Estados Unidos
String
Tablas principales

Las clases de entidad de datos de referencia y sus roles, que se utilizan para crear el localizador. Solo se puede utilizar una tabla principal por rol.

Las clases de entidad representadas como servicios son tipos de datos compatibles para usarlos como datos de referencia primarios.

Precaución:

Cuando se define una consulta de definición para los datos de referencia primarios o existen entidades seleccionadas, solo se incluirán las entidades consultadas y seleccionadas cuando se crea el localizador.

Nota:

Al crear un localizador con datos de referencia que contienen millones de entidades, debe disponer al menos de 3 a 4 veces el tamaño de los datos en espacio libre en disco en la unidad que contiene el directorio temporal, ya que los archivos utilizados para construir el localizador se escriben en esta ubicación antes de que el localizador se copie en la ubicación de salida. Si no se dispone de suficiente espacio en disco, la herramienta fallará cuando se quede sin espacio. Además, al crear localizadores grandes, su equipo debe tener RAM suficiente para manejar grandes procesos que requieren mucha memoria.

Value Table
Asignación de campos

La asignación de los campos del dataset de referencia primario a los campos admitidos por el rol del localizador. Los campos con un asterisco (*) al lado del nombre son obligatorios por el rol del localizador. Asigne los campos relevantes para cada tabla en el parámetro Tablas principales.

Nota:

Si utiliza una tabla de nombres alternativos, asigne un Id. de unión en Tablas principales.

Para agregar campos de salida personalizados, escriba el nombre de los campos en el parámetro Campos de salida personalizados. Los nuevos campos se agregan al parámetro Asignación de campos. A continuación, se pueden seleccionar los campos del parámetro Tablas principales que contienen los valores adicionales a incluir en la salida de geocodificación.

String
Localizador de salida

El archivo del localizador de direcciones de salida.

Address Locator
Código de idioma

Especifica dónde se aplicará la lógica de geocodificación específica del idioma a los datos de referencia para el localizador.

Si existe un campo de código de idioma en los datos de referencia primarios, proporcionar un código de idioma puede mejorar los resultados de la geocodificación.

Se puede especificar seleccionando <Como se define en los datos> en la lista y asignando uno de los valores de los datos de referencia primarios de la asignación de campos o se puede aplicar a todo el dataset seleccionando un idioma en la lista.

  • <Como se define en los datos>Valor de código de idioma de tres caracteres definido en los datos de referencia de cada entidad
  • VascoVasco
  • CatalánCatalán
  • NeerlandésNeerlandés
  • EnglishEnglish
  • FrancésFrancés
  • AlemánAlemán
  • GallegoGallego
  • ItalianoItaliano
  • EspañolEspañol
String
Tablas de nombres alternativos
(Opcional)

Las tablas que contienen los nombres alternativos para las entidades en las tablas de roles principales.

Las tablas representadas como servicios son tipos de datos compatibles para usarlos como tablas de nombre alternativo.

Precaución:

Cuando se define una consulta de definición para la tabla de nombre alternativo o existen registros seleccionados, solo se incluyen los registros consultados y seleccionados al crear el localizador.

Value Table
Asignación de campos de datos alternativos
(Opcional)

Asigna campos de la tabla de nombres alternativos a los campos de datos alternativos admitidos por el rol del localizador. Los campos con un asterisco (*) al lado del nombre son obligatorios por el rol del localizador. Asigne los campos relevantes para cada tabla en el parámetro Tablas de nombres alternativos.

Nota:

Si los datos están normalizados y la tabla principal no contiene valores de nombre de ciudad, pero sí la tabla de nombres alternativos, el campo Primary Name Indicator se puede asignar a un campo de la tabla de nombres alternativos que contenga un valor que indique si el registro es el campo principal (por ejemplo, verdadero/falso o Sí/No). Si este campo no está asignado, el primer registro de la tabla de nombres alternativos se utiliza como el valor principal.

String
Campos de salida personalizados
(Opcional)

Agrega campos de salida al resultado de geocodificación. Los valores especificados para este parámetro definen los nombres de los campos de salida que devuelve el resultado de geocodificación; sin embargo, cada nuevo campo debe asignarse a un campo en los datos de referencia. Este nuevo campo de salida se aplica a todos los roles usados en el localizador. Si el rol del localizador tiene lado izquierdo y derecho, se incorporan _left y _right al final del nombre del campo. El número máximo permitido de campos admitido en el localizador es 50.

Realice lo siguiente para agregar campos de salida personalizados al localizador para usarlos en el resultado de geocodificación:

  • Escriba los nombres de los campos de salida personalizados. Los nombres de los campos de salida personalizados se agregan a la asignación de campos.
  • Seleccione el campo de los datos de referencia que contenga los valores adicionales que desea incluir en la salida de geocodificación.
String
Tipo de precisión
(Opcional)

Especifica la precisión del localizador.

  • Global extraaltaLa precisión es aproximadamente 1 cm, que es consistente globalmente.
  • Global altaLa precisión es aproximadamente 0,5 m, que es consistente globalmente. Esta es la opción predeterminada.
  • Local extraaltaSe utiliza mayor precisión para las áreas locales.
String

arcpy.geocoding.CreateLocator(country_code, primary_reference_data, field_mapping, out_locator, language_code, {alternatename_tables}, {alternate_field_mapping}, {custom_output_fields}, {precision_type})
NombreExplicaciónTipo de datos
country_code

Especifica dónde se aplicará la lógica de geocodificación específica del país a los datos de referencia para el localizador.

Se puede especificar mediante AS_DEFINED_IN_DATA y se puede asignar un valor desde primary_reference_data en field_mapping o se puede aplicar a todo el dataset especificando el nombre del código de país de tres caracteres, como USA, CAN o PRI.

Proporciona una plantilla de país que contiene los nombres de campo previstos que estén disponibles mediante el parámetro field_mapping para el país especificado del localizador que se va a crear.

  • AS_DEFINED_IN_DATAValor de código de país de tres caracteres definido en los datos de referencia de cada entidad
  • ASMSamoa Americana
  • AUSAustralia
  • AUTAustria
  • BELBélgica
  • CANCanadá
  • CHESuiza
  • DEUAlemania
  • ESPEspaña
  • FRAFrancia
  • GBRGran Bretaña
  • GUMGuam
  • MNPIslas Marianas del Norte
  • NLDPaíses Bajos
  • PRIPuerto Rico
  • VIRIslas Vírgenes de los EE. UU.
  • USAEstados Unidos
  • UMIIslas Ultramarinas Menores de los Estados Unidos
String
primary_reference_data
[[reference_data, {role}],...]

Las clases de entidad de datos de referencia y sus roles, que se utilizan para crear el localizador. Solo se puede utilizar una tabla principal por rol.

Las clases de entidad representadas como servicios son tipos de datos compatibles para usarlos como datos de referencia primarios.

Precaución:

Cuando se define una consulta de definición para los datos de referencia primarios o existen entidades seleccionadas, solo se incluirán las entidades consultadas y seleccionadas cuando se crea el localizador.

Nota:

Al crear un localizador con datos de referencia que contienen millones de entidades, debe disponer al menos de 3 a 4 veces el tamaño de los datos en espacio libre en disco en la unidad que contiene el directorio temporal, ya que los archivos utilizados para construir el localizador se escriben en esta ubicación antes de que el localizador se copie en la ubicación de salida. Si no se dispone de suficiente espacio en disco, la herramienta fallará cuando se quede sin espacio. Además, al crear localizadores grandes, su equipo debe tener RAM suficiente para manejar grandes procesos que requieren mucha memoria.

Value Table
field_mapping
[field_mapping,...]

La asignación de los campos del dataset de referencia primario a los campos admitidos por el rol del localizador. Cada asignación de campos de este parámetro está en el siguiente formato, donde <role name> es el nombre del rol, <locator role field name> es el nombre del campo que admite el nombre del localizador, <primary data> es el nombre de los datos que se utilizan en el parámetro primary_reference_data y <primary data field name> es el nombre del campo del dataset de referencia primario.

Lo que sigue es un ejemplo de field_mapping primario.

# <role name>.<locator role field name> <primary data>.<primary data field name>

# This shows an example:
primary_reference_data_field_map =
"'StreetAddress.HOUSE_NUMBER_FROM_LEFT streets.L_F_ADD';"\
"'StreetAddress.HOUSE_NUMBER_TO_LEFT streets.L_T_ADD';"\
"'StreetAddress.HOUSE_NUMBER_FROM_RIGHT streets.R_F_ADD';"\
"'StreetAddress.HOUSE_NUMBER_TO_RIGHT streets.R_T_ADD';"\
"'StreetAddress.STREET_PREFIX_DIR streets.PREFIX';"\
"'StreetAddress.STREET_PREFIX_TYPE streets.PRE_TYPE';"\
"'StreetAddress.STREET_NAME streets.NAME';"\
"'StreetAddress.STREET_SUFFIX_TYPE streets.TYPE';"\
"'StreetAddress.STREET_SUFFIX_DIR streets.SUFFIX';"\
"'StreetAddress.CITY_LEFT streets.CITYL';"\
"'StreetAddress.CITY_RIGHT streets.CITYR';"\
"'StreetAddress.REGION_LEFT streets.STATE_ABBR';"\
"'StreetAddress.REGION_RIGHT streets.STATE_ABBR';"\
"'StreetAddress.POSTAL_LEFT streets.ZIPL';"\
"'StreetAddress.POSTAL_RIGHT streets.ZIPR'"

Asigne los campos relevantes para cada tabla en el parámetro primary_reference_data. Si no asigna un campo de datos de referencia opcional que utiliza el rol del localizador a un campo de un dataset de referencia, no es necesario especificar que no hay ninguna asignación usando <None> en lugar de un nombre de campo.

Para determinar el <locator role field name> para el campo de datos de referencia utilizado por el rol del localizador, abra la herramienta Crear localizador en ArcGIS Pro y elija el rol del localizador. El nombre que aparece en la columna Nombre de campo del parámetro Asignación de campos es el nombre de campo del rol del campo.

Nota:

Si utiliza una tabla de nombres alternativos, asigne un Id. de unión en primary_reference_data.

Para agregar campos de salida personalizados, los nombres de los campos se deben definir tanto en el parámetro custom_output_fields como en el parámetro field_mapping. El parámetro field_mapping usa el formato '<locator role field name> <primary data field name>', donde <locator role field name> se define como 'RoleName.CustomFieldName' y <primary data field name> es el nombre del campo del dataset de referencia primario como se muestra en los campos asignados del ejemplo anterior. Si se agrega un campo personalizado a un rol de Dirección de calle, es necesario asignar 'StreetAddress.CustomFieldName_Left' y 'StreetAddress.CustomFieldName_Right' para cada lado de la calle.

String
out_locator

El archivo del localizador de direcciones de salida.

Address Locator
language_code

Especifica dónde se aplicará la lógica de geocodificación específica del idioma a los datos de referencia para el localizador.

Si existe un campo de código de idioma en los datos de referencia primarios, proporcionar un código de idioma puede mejorar los resultados de la geocodificación.

Se puede especificar configurando AS_DEFINED_IN_DATA como el valor de language_code y asignando un valor de primary_reference_data en field_mapping o puede aplicarse a todo el dataset especificando un idioma mediante el código de idioma de 3 caracteres que representa el idioma de la dirección, como ENG.

  • AS_DEFINED_IN_DATAValor de código de idioma de tres caracteres definido en los datos de referencia de cada entidad
  • BAQVasco
  • CATCatalán
  • DUTNeerlandés
  • ENGEnglish
  • FREFrancés
  • GERAlemán
  • GLGGallego
  • ITAItaliano
  • SPAEspañol
String
alternatename_tables
[alternatename_tables,...]
(Opcional)

Las tablas que contienen los nombres alternativos para las entidades en las tablas de roles principales.

Las tablas representadas como servicios son tipos de datos compatibles para usarlos como tablas de nombre alternativo.

Precaución:

Cuando se define una consulta de definición para la tabla de nombre alternativo o existen registros seleccionados, solo se incluyen los registros consultados y seleccionados al crear el localizador.

Value Table
alternate_field_mapping
[alternate_field_mapping,...]
(Opcional)

Asigna campos de la tabla de nombres alternativos a los campos de datos alternativos admitidos por el rol del localizador. Cada asignación de campos debe utilizar el siguiente formato, donde <alternate name table role> es el nombre del rol de tabla de nombres alternativos, <locator role alternate field name> es el nombre de los campos de datos alternativos que admite el rol de localizador de la tabla de nombres alternativos, <alternate data table> es el nombre de la tabla de nombres alternativos y <alternate data table field name> es el nombre del campo en la tabla de nombres alternativos. Asigne los campos relevantes para cada tabla en alternatename_tables.

El siguiente es un ejemplo de alternate_field_mapping para alternatename_tables.

# <alternate name table role>.<locator role alternate field name> <alternate data table>.<alternate data table field name>

# This shows an example:
alternate_data__table_field_map =
"'AlternateStreetName.STREET_NAME_JOIN_ID altname.JOINID';"\
"'AlternateStreetName.STREET_PREFIX_DIR altname.PRE_DIR';"\
"'AlternateStreetName.STREET_PREFIX_TYPE altname.PRE_TYPE';"\
"'AlternateStreetName.STREET_NAME altname.ST_NAME';"\
"'AlternateStreetName.STREET_SUFFIX_TYPE altname.ST_TYPE';"\
"'AlternateStreetName.STREET_SUFFIX_DIR altname.SUF_DIR'"
Nota:

Si los datos están normalizados y la tabla principal no contiene valores de nombre de ciudad, pero sí la tabla de nombres alternativos, el campo Primary Name Indicator se puede asignar a un campo de la tabla de nombres alternativos que contenga un valor que indique si el registro es el campo principal (por ejemplo, verdadero/falso o Sí/No). Si este campo no está asignado, el primer registro de la tabla de nombres alternativos se utiliza como el valor principal.

String
custom_output_fields
[custom_output_fields,...]
(Opcional)

Agrega campos de salida al resultado de geocodificación. Los valores especificados para este parámetro definen los nombres de los campos de salida que devuelve el resultado de geocodificación; sin embargo, cada nuevo campo debe asignarse a un campo en los datos de referencia. Este nuevo campo de salida se aplica a todos los roles usados en el localizador. Si el rol del localizador tiene lado izquierdo y derecho, se incorporan _left y _right al final del nombre del campo. El número máximo permitido de campos admitido en el localizador es 50.

Nota:

Primero se deben incluir los nombres de los campos de salida personalizados en el parámetro field_mapping y, a continuación, se deben enumerar los nombres en el parámetro custom_output_fields.

String
precision_type
(Opcional)

Especifica la precisión del localizador.

Nota:

Los localizadores creados con precisión GLOBAL_EXTRA_HIGH o LOCAL_EXTRA_HIGH se pueden usar en ArcGIS Pro 2.6 o posteriores y en Enterprise 10.8.1 o posteriores.

  • GLOBAL_EXTRA_HIGHLa precisión es de aproximadamente 1 centímetro, que es consistente globalmente.
  • GLOBAL_HIGHLa precisión es de aproximadamente 0,5 metros, que es consistente globalmente. Esta es la opción predeterminada.
  • LOCAL_EXTRA_HIGHSe utiliza mayor precisión para las áreas locales.
String

Muestra de código

Ejemplo 1 de CreateLocator (script independiente)

El siguiente script de Python demuestra cómo utilizar la función CreateLocator en un script independiente.

# Description: Create a POI locator using a feature class in a file geodatabase 
#              that contains points of interest for Arts & Entertainment 
#              locations as reference data, where country_code and language_code 
#              are defined in the data. The new locator will be created in a 
#              file folder.

# Import system modules
import arcpy

# Set workspace
arcpy.env.workspace = "C:/Data/RhodeIsland"

# Set local variables:
primary_reference_data = "RI_Arts_POI POI"
field_mapping = "'POI.PLACE_NAME RI_Arts_POI.PLACE_NAME';"\
               "'POI.CATEGORY RI_Arts_POI.CATEGORY';"\
               "'POI.SUBCATEGORY RI_Arts_POI.SUBCATEGORY';"\
               "'POI.HOUSE_NUMBER RI_Arts_POI.HOUSE_NUMB';"\
               "'POI.STREET_NAME RI_Arts_POI.STREET_NAME';"\
               "'POI.NEIGHBORHOOD RI_Arts_POI.NEIGHBORHOOD';"\
               "'POI.CITY RI_Arts_POI.CITY_NAME';"\
               "'POI.SUBREGION RI_Arts_POI.SUBREGION';"\
               "'POI.REGION RI_Arts_POI.REGION_NAME';"\
               "'POI.POSTAL RI_Arts_POI.POSTAL_CODE';"\
               "'POI.COUNTRY_CODE RI_Arts_POI.COUNTRY_CODE';"\
               "'POI.LANG_CODE RI_Arts_POI.LANGUAGE_CODE';"\
               "'POI.RANK RI_Arts_POI.RANK'"
out_locator = "Arts_Entertainment_POIs"

# Execute CreateLocator
arcpy.geocoding.CreateLocator("AS_DEFINED_IN_DATA", primary_reference_data, field_mapping, 
                              out_locator, "AS_DEFINED_IN_DATA")
Ejemplo 2 de CreateLocator (ventana de Python)

El siguiente script de Python demuestra cómo utilizar la función CreateLocator en el modo inmediato.

# Description: Create a StreetAddress locator using a street centerline feature 
#              class in a file geodatabase as reference data, where multiple 
#              custom_output_fields are added to the locator for use in the 
#              geocode result. country_code and language_code are specified and 
#              will be applied to the entire reference dataset. The new locator 
#              will be created in a file folder.

# Import system modules
import arcpy

# Set workspace
arcpy.env.workspace = "C:/Data/Denver"

# Set local variables
country_code = "USA"
primary_reference_data = "Street_Centerline StreetAddress"
field_mapping = "'StreetAddress.HOUSE_NUMBER_FROM_LEFT Street_Centerline.L_F_ADD';"\
                "'StreetAddress.HOUSE_NUMBER_TO_LEFT Street_Centerline.L_T_ADD';"\
                "'StreetAddress.HOUSE_NUMBER_FROM_RIGHT Street_Centerline.R_F_ADD';"\
                "'StreetAddress.HOUSE_NUMBER_TO_RIGHT Street_Centerline.R_T_ADD';"\
                "'StreetAddress.STREET_PREFIX_DIR Street_Centerline.PREFIX';"\
                "'StreetAddress.STREET_PREFIX_TYPE Street_Centerline.TYPE';"\
                "'StreetAddress.STREET_NAME Street_Centerline.NAME';"\
                "'StreetAddress.STREET_SUFFIX_TYPE Street_Centerline.TYPE';"\
                "'StreetAddress.STREET_SUFFIX_DIR Street_Centerline.SUFFIX';"\
                "'StreetAddress.POSTAL_LEFT Street_Centerline.ZIPLEFT';"\
                "'StreetAddress.POSTAL_RIGHT Street_Centerline.ZIPRIGHT';"\
                "'StreetAddress.CustomField1_left Street_Centerline.LEFTFIRE';"\
                "'StreetAddress.CustomField1_right Street_Centerline.RTFIRE';"\
                "'StreetAddress.CustomField2_left Street_Centerline.LEFTEMS';"\
                "'StreetAddress.CustomField2_right Street_Centerline.RTEMS'"
out_locator = "DenverStreetsCustomFieldsLocator"
language_code = "ENG"

# Execute CreateLocator
arcpy.geocoding.CreateLocator(country_code, primary_reference_data, field_mapping, 
                              language_code, None, None, "CustomField1;CustomField2")
Ejemplo 3 de CreateLocator (ventana de Python)

El siguiente script de Python demuestra cómo utilizar la función CreateLocator en el modo inmediato.

# Create a StreetAddress locator using a street centerline feature class and an alternate
# name table, for alternate street names, in a file geodatabase as reference data.
# The new locator will be created in a file folder.

# Import system modules
import arcpy

# Set workspace
arcpy.env.workspace = "C:/ArcTutor/Geocoding/Atlanta"

# Set local variables
primary_reference_data = "streets StreetAddress"
field_mapping = "'StreetAddress.STREET_NAME_JOIN_ID streets.STREETID';"\
                "'StreetAddress.HOUSE_NUMBER_FROM_LEFT streets.L_F_ADD';"\
                "'StreetAddress.HOUSE_NUMBER_TO_LEFT streets.L_T_ADD';"\
                "'StreetAddress.HOUSE_NUMBER_FROM_RIGHT streets.R_F_ADD';"\
                "'StreetAddress.HOUSE_NUMBER_TO_RIGHT streets.R_T_ADD';"\
                "'StreetAddress.STREET_PREFIX_DIR streets.PREFIX';"\
                "'StreetAddress.STREET_PREFIX_TYPE streets.PRE_TYPE';"\
                "'StreetAddress.STREET_NAME streets.NAME';"\
                "'StreetAddress.STREET_SUFFIX_TYPE streets.TYPE';"\
                "'StreetAddress.STREET_SUFFIX_DIR streets.SUFFIX';"\
                "'StreetAddress.CITY_LEFT streets.CITYL';"\
                "'StreetAddress.CITY_RIGHT streets.CITYR';"\
                "'StreetAddress.REGION_LEFT streets.STATE_ABBR';"\
                "'StreetAddress.REGION_RIGHT streets.STATE_ABBR';"\
                "'StreetAddress.POSTAL_LEFT streets.ZIPL';"\
                "'StreetAddress.POSTAL_RIGHT streets.ZIPR'"
alternatename_tables = "altname AlternateStreetName"
alternate_field_mapping = "'AlternateStreetName.STREET_NAME_JOIN_ID altname.STREETID';"\
                          "'AlternateStreetName.STREET_PREFIX_DIR altname.PRE_DIR';"\
                          "'AlternateStreetName.STREET_PREFIX_TYPE altname.PRE_TYPE';"\
                          "'AlternateStreetName.STREET_NAME altname.ST_NAME';"\
                          "'AlternateStreetName.STREET_SUFFIX_TYPE altname.ST_TYPE';"\
                          "'AlternateStreetName.STREET_SUFFIX_DIR altname.SUF_DIR';"\
                          "'AlternateStreetName.PRIMARY_NAME_INDICATOR altname.PRIMARY'"
out_locator = "AtlantaAlternateStreetsLocator"

# Execute CreateLocator
arcpy.geocoding.CreateLocator("USA", primary_reference_data, field_mapping, 
                              out_locator, "ENG", alternatename_tables, 
                              alternate_field_mapping)
Ejemplo 4 de CreateLocator (script independiente)

El siguiente script de Python demuestra cómo utilizar la función CreateLocator en el modo inmediato.

# Description: Create a multi-role locator (PointAddress & StreetAddress) using a hosted
# feature service from ArcGIS Online as reference data.
# country_code and language_code
# are specified and will be applied to the entire reference dataset.
# The new locator will be created in a file folder.

# Import system modules
import arcpy

# Sign in to ArcGIS Online to use feature services as input
arcpy.SignInToPortal("https://www.arcgis.com", "<username>", "<password>")

# Set local variables
country = "USA"
in_table = "https://services.arcgis.com/<layer_id>/arcgis/rest/services/<service_name>/FeatureServer/<layer_number> PointAddress;"\
           "https://services.arcgis.com/<layer_id>/arcgis/rest/services/<service_name>/FeatureServer/<layer_number> StreetAddress"
field_mapping = "'PointAddress.ADDRESS_JOIN_ID 0.PT_ADDR_ID';"\
                "'PointAddress.HOUSE_NUMBER 0.ADDRESS';"\
                "'PointAddress.STREET_NAME 0.ST_NAME';"\
                "'PointAddress.SIDE 0.SIDE';"\
                "'PointAddress.CITY 0.CITY';"\
                "'PointAddress.REGION 0.STATE';"\
                "'StreetAddress.HOUSE_NUMBER_FROM_LEFT 1.L_F_ADD_INT';"\
                "'StreetAddress.HOUSE_NUMBER_TO_LEFT 1.L_T_ADD_INT';"\
                "'StreetAddress.HOUSE_NUMBER_FROM_RIGHT 1.R_F_ADD_INT';"\
                "'StreetAddress.HOUSE_NUMBER_TO_RIGHT 1.R_T_ADD_INT';"\
                "'StreetAddress.STREET_PREFIX_DIR 1.PREFIX';"\
                "'StreetAddress.STREET_PREFIX_TYPE 1.PRETYPE';"\
                "'StreetAddress.STREET_NAME 1.NAME';"\
                "'StreetAddress.STREET_SUFFIX_TYPE 1.TYPE';"\
                "'StreetAddress.STREET_SUFFIX_DIR 1.SUFFIX';"\
                "'StreetAddress.CITY_LEFT 1.PLACENAME_L';"\
                "'StreetAddress.CITY_RIGHT 1.PLACENAME_R';"\
                "'StreetAddress.REGION_LEFT 1.STATE';"\
                "'StreetAddress.REGION_ABBR_LEFT 1.STATE_L';"\
                "'StreetAddress.REGION_RIGHT 1.STATE';"\
                "'StreetAddress.REGION_ABBR_RIGHT 1.STATE_R'"
out_locator = r"C:\output\locators\MultiroleFeatureServiceBasedLocator"
language = "ENG"

# Execute CreateLocator
arcpy.geocoding.CreateLocator(country, in_table, field_mapping, out_locator, language)

Entornos

Esta herramienta no utiliza ningún entorno de geoprocesamiento.

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados