Beschriftung | Erläuterung | Datentyp |
Land bzw. Region | Gibt an, wo landesspezifische Geokodierungslogik auf die Referenzdaten für den Locator angewendet wird. Standardmäßig wird die regionale Einstellung des Betriebssystems verwendet. Sie können sie festlegen, indem Sie in der Liste den Eintrag <Wie in Daten angegeben> auswählen und einen Wert aus den Daten in der Feldzuordnung zuordnen. Alternativ können Sie die Logik auf das gesamte Dataset anwenden, indem Sie ein Land aus der Liste angeben. Sie stellt eine landesspezifische Vorlage mit den erwarteten Feldnamen bereit, die im Parameterwert Feldzuordnung für das angegebene Land des zu erstellenden Locators angezeigt werden.
| String |
Primärtabelle(n) | Die Feature-Classes mit Referenzdaten und deren Rollen, die zum Erstellen eines Locators verwendet werden. Pro Rolle kann nur eine Primärtabelle verwendet werden. Als Services dargestellte Feature-Classes sind unterstützte Datentypen zur Verwendung als primäre Referenzdaten. Vorsicht:Wenn eine Definitionsabfrage für die primären Referenzdaten definiert wird oder wenn Features ausgewählt wurden, werden beim Erstellen des Locators nur die abgefragten und ausgewählten Features einbezogen. Hinweis:Beim Erstellen eines Locators mit Referenzdaten, die Millionen von Features enthalten, ist mindestens das drei- bis vierfache der Größe dieser Daten als freier Festplattenspeicher in Ihrem Temp-Verzeichnis notwendig, da Dateien, die zum Erstellen des Locators verwendet werden, in dieses Verzeichnis geschrieben werden, bevor der Locator in das Ausgabeverzeichnis kopiert wird. Wenn auf der Festplatte nicht genügend Speicher verfügbar ist, tritt ein Fehler auf, sobald nicht genügend Speicher für das Ausführen des Werkzeugs verfügbar ist. Beim Erstellen von großen Locators für die Verarbeitung umfangreicher, speicherintensiver Prozesse muss Ihr Computer über genügend RAM verfügen. | Value Table |
Feldzuordnung | Die Zuordnung von Feldern mit primärem Referenz-Dataset zu Feldern, die von der Locator-Rolle unterstützt werden. Felder mit einem Sternchen (*) neben dem Namen sind für die Locator-Rolle erforderlich. Ordnen Sie die jeweiligen Felder für die einzelnen Tabellen aus dem Parameterwert Primärtabelle(n) zu. Hinweis:Wenn Sie eine Tabelle mit alternativen Namen verwenden, wird die Join-ID im Parameterwert Primärtabelle(n) zugeordnet. Wenn Sie benutzerdefinierte Ausgabefelder hinzufügen möchten, geben Sie den Namen der Felder in den Parameter Benutzerdefinierte Ausgabefelder ein. Die neuen Felder werden dem Parameterwert Feldzuordnung hinzugefügt. Anschließend können Sie die Felder mit den zusätzlichen Werten, die in die Geokodierungsausgabe einbezogen werden sollen, im Parameterwert Primärtabelle(n) auswählen. | String |
Ausgabe-Locator | Die Datei des Ausgabe-Adressen-Locators. | Address Locator |
Sprachencode | Gibt an, wo sprachspezifische Geokodierungslogik auf die Referenzdaten für den Locator angewendet wird. Wenn in den primären Referenzdaten ein Sprachcodefeld vorhanden ist, können die Ergebnisse der Geokodierung durch Bereitstellung eines Sprachcodes verbessert werden. Sie können ihn festlegen, indem Sie in der Liste den Eintrag <Wie in Daten angegeben> auswählen und einen Wert aus den primären Referenzdaten in der Feldzuordnung zuordnen. Alternativ können Sie den Sprachcode auf das gesamte Dataset anwenden, indem Sie eine Sprache aus der Liste angeben.
| String |
Tabellen mit alternativen Namen (optional) | Die Tabellen, die alternative Namen für die Features in den Tabellen mit primären Rollen enthalten. Als Services dargestellte Tabellen sind unterstützte Datentypen zur Verwendung als Tabellen mit alternativen Namen. Vorsicht:Wenn eine Definitionsabfrage für die Tabelle mit alternativen Namen definiert wird oder wenn Datensätze ausgewählt wurden, werden beim Erstellen des Locators nur die abgefragten und ausgewählten Datensätze einbezogen. | Value Table |
Zuordnung alternativer Datenfelder (optional) | Die Zuordnung von Feldern in der Tabelle mit alternativen Namen zu Feldern mit alternativen Daten, die von der Locator-Rolle unterstützt werden. Felder mit einem Sternchen (*) neben dem Namen sind für die Locator-Rolle erforderlich. Ordnen Sie für die einzelnen Tabellen die relevanten Felder aus dem Parameterwert Tabellen mit alternativen Namen zu. Hinweis:Wenn die Daten normalisiert sind und Namenswerte für Städte nicht in der Primärtabelle, sondern in der Tabelle mit alternativen Namen enthalten sind, kann das Feld Primary Name Indicator einem Feld in der Tabelle mit alternativen Namen zugordnet werden, das einen Wert enthält, der angibt, ob es sich bei dem Datensatz um das Primärfeld handelt (z. B. true/false oder ja/nein). Wenn das Feld nicht zugeordnet wird, wird der erste Datensatz in der Tabelle mit alternativen Namen als primärer Wert verwendet. | String |
Benutzerdefinierte Ausgabefelder (optional) | Fügt dem Locator benutzerdefinierte Ausgabefelder hinzu. Die für diesen Parameter angegebenen Werte definieren die Namen der benutzerdefinierten Ausgabefelder, die im Ergebnis der Geokodierung zurückgegeben werden. Dabei muss jedoch jedes neue Feld einem Feld in den Referenzdaten zugeordnet werden. Dieses neue Ausgabefeld wird für alle Rollen übernommen, die im Locator verwendet wurden. Wenn die Locator-Rolle eine linke und rechte Seite enthält, wird "_left" bzw. "_right" an das Ende des Feldnamens angehängt. Die maximale Anzahl der vom Locator unterstützten Felder beträgt 50. Gehen Sie wie folgt vor, um dem Locator benutzerdefinierte Ausgabefelder zur Verwendung im Ergebnis der Geokodierung hinzuzufügen:
| String |
Genauigkeitstyp (optional) | Gibt die Genauigkeit des Locators an.
Hinweis:Mit der Genauigkeit Global extrahoch oder Lokal extrahoch erstellte Locators können in ArcGIS Pro 2.6 oder höher sowie in Enterprise 10.8.1 oder höher verwendet werden. | String |
Zusammenfassung
Erstellt einen Locator für die Suche nach der Position einer Adresse oder eines Ortes, um eine Tabelle mit Adressen oder Orten in eine Sammlung von Punkt-Features zu konvertieren oder um die Adresse einer Punktposition zu ermitteln.
Hinweis:
Von diesem Werkzeug erstellte Locators können in ArcGIS Pro 2.2 oder höher,Enterprise 10.6.1 oder höher und als Locator-Service in ArcMap verwendet werden. Möglicherweise werden nicht alle Locator-Funktionen in früheren Versionen als Enterprise 10.7 unterstützt. Dies gilt für zusätzliche Funktionen, die in neueren Versionen der Software eingeführt wurden. Von diesem Werkzeug erstellte Locators können nicht als lokale Locators in ArcMap verwendet werden.
Verwendung
Die Locator-Rolle definiert den verwendeten Datentyp (Flurstück, Straßenmittelachse, Postalisch, Point of Interest usw.) und stellt die entsprechenden Felder bereit, die verwendet werden sollen, wenn Locator und Informationen erstellt werden, die im Geokodierungsergebnis zurückgegeben werden. Nur die vom ausgewählten Wert für Land bzw. Region unterstützten Rollen werden zusammen mit den entsprechenden Locator-Rollenfeldern aufgelistet.
Hinweis:
- Beim Erstellen eines Locators mit diesem Werkzeug kann nur eine Primärtabelle pro Rolle verwendet werden.
- Die Locator-Rolle Point of Interest (POI) ersetzt die Ortsnamen-Alias-Tabelle, aber sie erfordert eine Point- oder Polygon-Feature-Class mit Ortsnamen zusammen mit der verknüpften Adresse in der Attributtabelle.
Mit den mit ArcGIS AllSource bereitgestellten primären Locator-Rollen können Sie folgende allgemeine Locator-Typen erstellen:
- Punktadresse: Eine Straßenadresse basierend auf Punkten, die Haus- oder Gebäudestandorte darstellen. Hierzu zählen Unteradressen, die auf Punkten basieren, die Unteradressen von Haus- und Gebäudestandorten etwa für eine Suite, eine Etage oder ein Apartment darstellen.
- Flurstück: Eine Adresse oder ein Flurstücksname, die bzw. der auf Punkten oder Polygonen basiert, die ein als Grundstück eingetragenes Stück Land darstellen. Meist umfasst es ein oder auch mehrere Häuser oder andere Strukturen. Einem Flurstück ist in der Regel eine Adresse und eine Flurstücks-Identifikationsnummer zugewiesen, z. B. "17 011100120063".
- Straßenabschnittsadresse: Eine Hausanschrift, die auf Straßen basiert, wobei die Hausnummer aus einem Nummernbereich interpoliert wird. Hierzu zählen Kreuzungen, Straßennamen, Straßenblöcke und Erweiterungen der Straßenadresse.
- Point of Interest: Verwaltungsgebiete, Ortsnamen, Unternehmen, Landmarks und geographischen Features, z. B. Starbucks.
- Distanzmarkierung: Eine Straßenadresse, die die lineare Entfernung entlang einer Straße, üblicherweise in Kilometern oder Meilen, von einem bestimmten Ausgangsort angibt.
- Distanzintervall: Ein Entfernungsmarker, der die interpolierten Entfernungswerte entlang einer Straßenmittelachse basierend auf Linien-Features darstellt.
- Postalisch: Postleitzahlen, Postleitzahlen mit Erweiterungen und postalische Bestimmungsorte, bei denen Polygon-Referenzdaten verwendet werden sollten, damit optimale Rückwärts-Geokodierungsergebnisse zurückgegeben werden können.
- Orte: Verwaltungszonen oder -gebiete wie Städte, Wohnquartiere, Bundesländer usw., bei denen Polygon-Referenzdaten verwendet werden sollten, damit optimale Rückwärts-Geokodierungsergebnisse zurückgegeben werden können.
Mit diesem Werkzeug kann ein Mehrfachrollen-Locator erstellt werden. Mit einem Mehrfachrollen-Locator können Sie mehrere Referenzdaten-Layer und -Rollen in einem einzelnen Locator kombinieren, um gleichzeitig nach verschiedenen Arten von Orten zu suchen. Wenn mehrere Layer desselben Geometrietyps vorhanden sind, die derselben Rolle zugewiesen werden können, empfiehlt es sich, die Layer in einen einzelnen Layer zusammenzuführen und den zusammengeführten Layer als primäre Referenzdaten für die entsprechende Rolle zu verwenden.
Weitere Informationen zum Kombinieren mehrerer Rollen zu einem einzigen Locator
Locators, die mit diesem Werkzeug erstellt wurden, unterstützen die globale Suche nach Koordinaten (Breitengrad/Längengrad, MGRS, DD oder USNG). Die primären Referenzdaten, mit denen der Locator erstellt wurde, müssen mindestens ein Feature enthalten. Die Unterstützung der Koordinatensuche wird unter Zu unterstützende Kategorien auf der Seite Geokodierungsoptionen des Dialogfeldes Locator-Eigenschaften für den Locator deaktiviert bzw. aktiviert.
Es können zusätzliche Felder aus den Referenzdaten angegeben und dem Locator als benutzerdefinierte Ausgabefelder hinzugefügt werden, wenn der Locator erstellt wird. In diesen Feldern können weitere Informationen zu den Kandidaten des Geokodierungsergebnisses angegeben werden. Wenn Sie z. B. wissen möchten, mit welchem Zählblock oder Feuerwehrbezirk eine Adresse verknüpft ist, können Sie die Adressen geokodieren und die Attribute des Zählblocks oder Feuerwehrbezirks räumlich mit den Geokodierungsergebnissen verbinden. Indem Sie die Attribute aus den Layern, die die zusätzlichen Informationen enthalten, räumlich mit den Referenzdaten, die zum Erstellen des Locators verwendet werden, verbinden, können Sie beim Erstellen des Locators die verbundenen Felder als benutzerdefinierte Ausgabefelder angeben. Die Geokodierungsergebnisse enthalten die zusätzlichen benutzerdefinierten Ausgabefelder und ihre Werte.
Als Services dargestellte Feature-Classes und Tabellen sind unterstützte Datentypen zur Verwendung als primäre Referenzdaten und Tabellen mit alternativen Namen.
Tabellen mit alternativen Namen können für alle unterstützten Locator-Rollen verwendet werden. Sie unterstützen alternative Namen für die Features in den primären.
Die Ausgabe dieses Werkzeugs kann als Eingabe für das Werkzeug Kombinierten Adressen-Locator erstellen verwendet werden.
Um die richtige Python-Syntax zu generieren, führen Sie zuerst das Werkzeug im Bereich Geoverarbeitung mit den zutreffenden Parameteroptionen aus. Öffnen Sie anschließend das Menü Ausführen, und wählen Sie die Option Python-Befehl kopieren aus.
Sie können Locators erstellen, die Point-Feature-Classes mit Z-Wert-Unterstützung als primäre Referenzdaten verwenden. Die Features mit Z-Wert-Unterstützung müssen mit absoluter Höhe erstellt werden, damit die Geokodierungsergebnisse mit der erwarteten Höhe in der Karte dargestellt werden.
Parameter
arcpy.geocoding.CreateLocator(country_code, primary_reference_data, field_mapping, out_locator, language_code, {alternatename_tables}, {alternate_field_mapping}, {custom_output_fields}, {precision_type})
Name | Erläuterung | Datentyp |
country_code | Gibt an, wo landesspezifische Geokodierungslogik auf die Referenzdaten für den Locator angewendet wird. Sie kann mit AS_DEFINED_IN_DATA festgelegt werden, und ein Wert kann aus primary_reference_data in field_mapping zugeordnet werden. Alternativ kann sie auch auf das gesamte Dataset angewendet werden, indem der aus drei Zeichen bestehende Ländercodename wie USA für die Vereinigten Staaten, CAN für Kanada oder PRI für Puerto Rico angegeben wird. Sie stellt eine landesspezifische Vorlage mit den erwarteten Feldnamen bereit, die zur Verwendung durch den Parameter field_mapping für das angegebene Land des zu erstellenden Locators zur Verfügung gestellt werden.
| String |
primary_reference_data [[reference_data, {role}],...] | Die Feature-Classes mit Referenzdaten und deren Rollen, die zum Erstellen eines Locators verwendet werden. Pro Rolle kann nur eine Primärtabelle verwendet werden. Als Services dargestellte Feature-Classes sind unterstützte Datentypen zur Verwendung als primäre Referenzdaten. Vorsicht:Wenn eine Definitionsabfrage für die primären Referenzdaten definiert wird oder wenn Features ausgewählt wurden, werden beim Erstellen des Locators nur die abgefragten und ausgewählten Features einbezogen. Hinweis:Beim Erstellen eines Locators mit Referenzdaten, die Millionen von Features enthalten, ist mindestens das drei- bis vierfache der Größe dieser Daten als freier Festplattenspeicher in Ihrem Temp-Verzeichnis notwendig, da Dateien, die zum Erstellen des Locators verwendet werden, in dieses Verzeichnis geschrieben werden, bevor der Locator in das Ausgabeverzeichnis kopiert wird. Wenn auf der Festplatte nicht genügend Speicher verfügbar ist, tritt ein Fehler auf, sobald nicht genügend Speicher für das Ausführen des Werkzeugs verfügbar ist. Beim Erstellen von großen Locators für die Verarbeitung umfangreicher, speicherintensiver Prozesse muss Ihr Computer über genügend RAM verfügen. | Value Table |
field_mapping [field_mapping,...] | Die Zuordnung von Feldern mit primärem Referenz-Dataset zu Feldern, die von der Locator-Rolle unterstützt werden. Alle Feldzuordnungen dieses Parameters weisen das nachstehende Format auf. Dabei steht <role name> für den Namen der Locator-Rolle, <locator role field name> für den Namen des von der Locator-Rolle unterstützten Feldes, <primary data> für den Namen der im Parameter primary_reference_data verwendeten Daten und <primary data field name> für den Namen des Feldes im primären Referenz-Dataset: Nachfolgend finden Sie ein Beispiel für eine primäre field_mapping.
Ordnen Sie die jeweiligen Felder für die einzelnen Tabellen aus dem Parameter primary_reference_data zu. Wenn Sie ein optionales, von der Locator-Rolle verwendetes Referenzdatenfeld keinem Feld im Referenz-Dataset zuordnen möchten, müssen Sie nicht <None> anstelle eines Feldnamens auswählen, um anzugeben, dass keine Zuordnung stattfindet. Um den Wert <locator role field name> für ein von einer Locator-Rolle verwendetes Referenzdatenfeld festzulegen, öffnen Sie in ArcGIS AllSource das Werkzeug Locator erstellen und wählen die Locator-Rolle aus. Der in der Spalte Feldname des Parameters Feldzuordnung angezeigte Name ist der Rollenfeldname des Feldes. Hinweis:Wenn Sie eine Tabelle mit alternativen Namen verwenden, wird die Join-ID im Parameterwert primary_reference_data zugeordnet. Um benutzerdefinierte Ausgabefelder hinzuzufügen, müssen die Namen der Felder im Parameter custom_output_fields sowie der Parameter field_mapping definiert werden. Der Parameter field_mapping weist das Format '<locator role field name> <primary data field name>' auf, wobei <locator role field name> als 'RoleName.CustomFieldName' definiert und <primary data field name> der Name des Feldes im primären Referenz-Dataset ist, wie in den zugeordneten Feldern im obigen Beispiel dargestellt. Wenn einer Straßenadressen-Rolle ein benutzerdefiniertes Feld hinzugefügt wird, müssen Sie 'StreetAddress.CustomFieldName_Left' und 'StreetAddress.CustomFieldName_Right' für jede Seite der Straße zuordnen. | String |
out_locator | Die Datei des Ausgabe-Adressen-Locators. | Address Locator |
language_code | Gibt an, wo sprachspezifische Geokodierungslogik auf die Referenzdaten für den Locator angewendet wird. Wenn in den primären Referenzdaten ein Sprachcodefeld vorhanden ist, können die Ergebnisse der Geokodierung durch Bereitstellung eines Sprachcodes verbessert werden. Er kann durch Festlegen von AS_DEFINED_IN_DATA als language_code-Wert und durch Zuordnen eines Werts aus primary_reference_data in field_mapping angegeben werden. Alternativ kann er auf das gesamte Dataset angewendet werden, indem eine Sprache mithilfe eines aus drei Zeichen bestehenden Sprachcodes angegeben wird, der die Sprache der Adresse angibt, z. B. ENG für Englisch.
| String |
alternatename_tables [alternatename_tables,...] (optional) | Die Tabellen, die alternative Namen für die Features in den Tabellen mit primären Rollen enthalten. Als Services dargestellte Tabellen sind unterstützte Datentypen zur Verwendung als Tabellen mit alternativen Namen. Vorsicht:Wenn eine Definitionsabfrage für die Tabelle mit alternativen Namen definiert wird oder wenn Datensätze ausgewählt wurden, werden beim Erstellen des Locators nur die abgefragten und ausgewählten Datensätze einbezogen. | Value Table |
alternate_field_mapping [alternate_field_mapping,...] (optional) | Ordnet Felder in der Tabelle mit alternativen Namen zu Feldern mit alternativen Daten, die von der Locator-Rolle unterstützt werden, zu. Alle Feldzuordnungen müssen das nachstehende Format aufweisen. Dabei steht <alternate name table role> für den Namen der Rolle mit einer Tabelle alternativer Namen und <locator role alternate field name> für den Namen des Feldes mit alternativen Daten, das von der Locator-Rolle mit einer Tabelle alternativer Namen unterstützt wird. <alternate data table> wiederum ist der Name der Tabelle mit alternativen Namen und <alternate data table field name> der Name des Feldes in der Tabelle mit alternativen Namen. Ordnen Sie die jeweiligen Felder für die einzelnen Tabellen in alternatename_tables zu. Nachfolgend finden Sie ein Beispiel für alternate_field_mapping für alternatename_tables.
Hinweis:Wenn die Daten normalisiert sind und Namenswerte für Städte nicht in der Primärtabelle, sondern in der Tabelle mit alternativen Namen enthalten sind, kann das Feld Primary Name Indicator einem Feld in der Tabelle mit alternativen Namen zugordnet werden, das einen Wert enthält, der angibt, ob es sich bei dem Datensatz um das Primärfeld handelt (z. B. true/false oder ja/nein). Wenn das Feld nicht zugeordnet wird, wird der erste Datensatz in der Tabelle mit alternativen Namen als primärer Wert verwendet. | String |
custom_output_fields [custom_output_fields,...] (optional) | Fügt dem Locator benutzerdefinierte Ausgabefelder hinzu. Die für diesen Parameter angegebenen Werte definieren die Namen der benutzerdefinierten Ausgabefelder, die im Ergebnis der Geokodierung zurückgegeben werden. Dabei muss jedoch jedes neue Feld einem Feld in den Referenzdaten zugeordnet werden. Dieses neue Ausgabefeld wird für alle Rollen übernommen, die im Locator verwendet wurden. Wenn die Locator-Rolle eine linke und rechte Seite enthält, wird "_left" bzw. "_right" an das Ende des Feldnamens angehängt. Die maximale Anzahl der vom Locator unterstützten Felder beträgt 50. Hinweis:Sie müssen zuerst die Namen der benutzerdefinierten Ausgabefelder in den Parameter field_mapping aufnehmen und danach die Namen im Parameter custom_output_fields auflisten. | String |
precision_type (optional) | Gibt die Genauigkeit des Locators an. Hinweis:Mit der Genauigkeit GLOBAL_EXTRA_HIGH oder LOCAL_EXTRA_HIGH erstellte Locators können in ArcGIS Pro 2.6 oder höher sowie in Enterprise 10.8.1 oder höher verwendet werden.
| String |
Codebeispiel
Das folgende Python-Skript veranschaulicht, wie die Funktion CreateLocator in einem eigenständigen Skript verwendet wird.
# 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"
# Run CreateLocator
arcpy.geocoding.CreateLocator("AS_DEFINED_IN_DATA", primary_reference_data, field_mapping,
out_locator, "AS_DEFINED_IN_DATA")
Das folgende Python-Skript veranschaulicht, wie die Funktion CreateLocator in einem eigenständigen Skript verwendet wird.
# Description: Create a POI locator using a shapefile that contains points
# of interest for airport locations as reference data. The new
# locator will be created in a file folder.
# Import system modules
import arcpy
# Set local variables:
country_code="USA"
primary_reference_data=r"C:\Data\airports.shp POI"
field_mapping=["POI.PLACE_NAME 'airports.shp'.name",\
"POI.CATEGORY 'airports.shp'.type",\
"POI.REGION 'airports.shp'.iso_region",\
"POI.ZONE 'airports.shp'.iso_country"]
out_locator=r"C:\Data\Airports_Locator"
language_code="ENG"
# Run CreateLocator
arcpy.geocoding.CreateLocator(country_code, primary_reference_data, field_mapping,
out_locator, language_code)
Das folgende Python-Skript veranschaulicht, wie die Funktion CreateLocator im unmittelbaren Modus verwendet wird.
# 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"
# Run CreateLocator
arcpy.geocoding.CreateLocator(country_code, primary_reference_data, field_mapping,
language_code, None, None, "CustomField1;CustomField2")
Das folgende Python-Skript veranschaulicht, wie die Funktion CreateLocator im unmittelbaren Modus verwendet wird.
# 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"
# Run CreateLocator
arcpy.geocoding.CreateLocator("USA", primary_reference_data, field_mapping,
out_locator, "ENG", alternatename_tables,
alternate_field_mapping)
Das folgende Python-Skript veranschaulicht, wie die Funktion CreateLocator im unmittelbaren Modus verwendet wird.
# Description: Create a multirole 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"
# Run CreateLocator
arcpy.geocoding.CreateLocator(country, in_table, field_mapping, out_locator, language)