Géocoder un fichier (Géocodage)

Résumé

Convertit de grandes tables locales d’adresse ou d’emplacements en points dans une classe d’entités ou comme table autonome .csv ou .xls. Cet outil utilise des localisateurs hébergés sur un portail ArcGIS Enterprise.

Remarque :

Cet outil fonctionne dans ArcGIS Pro version 2.4 ou ultérieure avec un portail ArcGIS Enterprise version 10.7 ou ultérieure.

Utilisation

  • Cet outil prend en charge les formats tabulaires suivants en entrée :

    • Valeurs séparées par des virgules (.csv)
    • Tables de géodatabase fichier
    • Feuilles de calcul Microsoft Excel (fichiers .xls ou .xlsx)

    Pour les tables .csv en entrée, la première ligne du fichier en entrée est utilisée comme noms de champ pour la table en sortie, en plus des champs ajoutés depuis le localisateur. Les noms de champs ne peuvent pas contenir d’espaces ou de caractères spéciaux tels que $ ou *.

    En savoir plus sur l’utilisation des fichiers Microsoft Excel dans ArcGIS Pro

    Remarque :

    Les méthodes les plus rapides pour obtenir des résultats de géocodage avec une table en entrée sous forme de géodatabase fichier consistent à limiter le contenu de la géodatabase fichier ou à fournir une géodatabase fichier qui contient une seule table.

  • Vous pouvez géocoder des adresses qui sont stockées dans un seul champ ou dans plusieurs. Un champ unique en entrée contient l’adresse complète, par exemple 303 Peachtree St NE, Atlanta, GA 30308. Plusieurs champs sont pris en charge si les adresses en entrée sont réparties sur plusieurs champs, tels que Address, City, State et ZIP dans le cas d’une adresse générale aux États-Unis.

  • Certains localisateurs prennent en charge plusieurs champs d’adresse en entrée tels que Address, Address2 et Address3. Dans ce cas, le composant d’adresse peut être divisé en plusieurs champs ; les champs d’adresse seront concaténés au moment du géocodage. Par exemple, 100, Main St et Apt 140 en trois champs ou 100 Main St et Apt 140 en deux champs deviendront 100 Main St Apt 140 lors du géocodage.

  • Cet outil exige un portail ArcGIS Enterprise 10.7 ou version ultérieure.

  • Si un localisateur de portail n’est pas disponible comme service utilitaire sur le portail, contactez l’administrateur du portail pour qu’il ajoute ce localisateur en tant que service utilitaire du portail et configurez le localisateur pour le géocodage par lots.

  • Utilisez un localisateur sur le portail ArcGIS Enterprise qui a été configuré pour utiliser plusieurs threads pour améliorer les performances de géocodage.

  • Les résultats de géocodage sont enregistrés dans la même référence spatiale que le localisateur. Vous pouvez modifier la référence spatiale de la sortie en définissant un système de coordonnées en sortie dans les paramètres d’environnement de l’outil.

  • Les résultats de géocodage contiendront toutes les informations de géocodage pertinentes, comme le score, le statut et l’adresse correspondante de chaque enregistrement, ainsi que les valeurs à partir de la table en entrée d’origine. Les résultats de géocodage depuis cet outil contiennent une capture d’écran statique de la table en entrée d’origine. Ainsi, l’ajout ou la mise à jour de toute valeur dans la table d’origine ne mettra pas à jour les résultats dans le fichier en sortie. Réexécutez l’outil pour créer un fichier en sortie qui inclut ces modifications.

  • Lorsque les résultats de géocodage sont renvoyés sous forme de classe d’entités, les adresses peuvent être ré-appariées à l’aide de l’outil Ré-apparier les adresses ou de l’option Rematch Addresses (Ré-apparier les adresses) qui ouvre la fenêtre Rematch Addresses (Ré-apparier les adresses).

    Remarque :

    La table doit être géocodée par un localisateur figurant dans le portail ArcGIS Enterprise 10.8 qui comporte plusieurs threads en vue du géocodage par lots.

    Pour en savoir plus sur le ré-appariement des résultats de géocodage

Syntaxe

arcpy.geocoding.GeocodeFile(in_table, locator, address_fields, output_type, output_location, output_name, {country}, {location_type}, {category}, {output_fields})
ParamètreExplicationType de données
in_table

Table en entrée qui contient les adresses ou les lieux à géocoder au format CSV, XLS ou XLSX ou dans une table de géodatabase fichier.

Record Set
locator

Localisateur de portail utilisé pour géocoder la table.

Vous pouvez sélectionner un localisateur dans la liste des localisateurs sur le portail actif ou y rechercher d’autres localisateurs disponibles. Les localisateurs définis comme services utilitaires sur le portail actif sont disponibles par défaut.

Remarque :

Le ArcGIS World Geocoding Service est désactivé pour cet outil. Utilisez l’outil Géocoder des adresses si vous souhaitez utiliser le ArcGIS World Geocoding Service.

Address Locator
address_fields

Chaque appariement de champ dans ce paramètre est au format input_locator_field, table_field_nameinput_locator_field désigne le nom du champ d’adresse en entrée spécifié par le localisateur et table_field_name le nom du champ correspondant dans la table d’adresses que vous souhaitez géocoder.

Vous pouvez spécifier un seul champ en entrée qui contient l’adresse complète, par exemple, 303 Peachtree St NE, Atlanta, GA 30308. Vous pouvez également spécifier plusieurs champs si les adresses en entrée sont décomposées dans plusieurs champs, tels que Address, City, State et ZIP dans le cas d’une adresse générale aux États-Unis.

Certains localisateurs prennent en charge plusieurs champs d’adresse en entrée tels que Address, Address2 et Address3. Dans ce cas, le composant d’adresse peut être divisé en plusieurs champs ; les champs d’adresse seront concaténés au moment du géocodage. Par exemple, 100, Main St et Apt 140 en trois champs ou 100 Main St et Apt 140 en deux champs deviennent 100 Main St Apt 140 lors du géocodage.

Si vous choisissez de ne pas apparier un champ d’adresse facultatif en entrée utilisé par le localisateur d’adresses à un champ dans la table d’adresses en entrée, précisez qu’il n’y a pas d’appariement en utilisant <None> au lieu d’un nom de champ.

Field Info
output_type

Spécifie le type de fichier dans lequel les résultats de géocodage seront enregistrés.

  • CSVUn fichier .csv sera renvoyé.
  • FEATURE_CLASSUne classe d’entités au sein d’une géodatabase fichier sera renvoyée.
  • XLSUn fichier .xls sera renvoyé.
String
output_location

Dossier dans lequel les résultats de géocodage en sortie sont écrits.

Si la sortie est un fichier .csv ou .xls, un fichier en sortie est placé dans le dossier spécifique.

Si la sortie est une classe d’entités, une géodatabase fichier en sortie est créée et placée dans le dossier spécifique, et la nouvelle géodatabase fichier contient la classe d’entités géocodée. La géodatabase fichier en sortie et la classe d’entités de la géodatabase fichier ont le même nom.

Workspace
output_name

Nom des résultats géocodés en sortie.

String
country
[country,...]
(Facultatif)

Pays dans lesquels les adresses géocodées sont recherchées. Ce paramètre est disponible pour les localisateurs prenant en charge un paramètre de pays et limite le géocodage aux pays sélectionnés. La sélection d’un ensemble de pays contribue à accroître la précision du géocodage. Si un champ représentant des pays dans Input Table (Table en entrée) est apparié au Role: Field Name (Rôle : Nom de champ) Country, la valeur du pays dans le paramètre Input Table (Table en entrée) remplace le paramètre Country (Pays).

Si aucun pays n’est spécifié, le géocodage est effectué sur tous les pays pris en charge sur le localisateur. Spécifiez la valeur en entrée sous forme d’un code de pays ISO 3166-1 de 3 caractères.

Le paramètre Country (Pays) n’est pas pris en charge pour tous les localisateurs.

String
location_type
(Facultatif)

Spécifie la géométrie de sortie préférée des correspondances POINT_ADDRESS. Les options de ce paramètre sont ROUTING_LOCATION, ce qui correspond au côté d’une rue qui peut être utilisé pour le calcul de l’itinéraire ou ADDRESS_LOCATION, c’est-à-dire l’emplacement représentant le toit, le centroïde de parcelle de l’adresse ou la porte principale. Si l’emplacement préféré n’existe pas dans les données, l’emplacement par défaut de ROUTING_LOCATION est renvoyé à la place. Pour les résultats de géocodage avec Addr_type=PointAddress, les valeurs attributaires x,y décrivent les coordonnées de l’adresse le long de la rue, tandis que les valeurs DisplayX et DisplayY décrivent les coordonnées du toit ou du centroïde du bâtiment. Reportez-vous à l’aide web de l’API REST pour obtenir de détails sur le paramètre locationType pour reverseGeocode.

Ce paramètre n’est pas pris en charge pour tous les localisateurs.

  • ADDRESS_LOCATIONLa géométrie des résultats de géocodage qui représentent un emplacement d’adresse, tel que le toit, le centroïde de la parcelle ou la porte principale, est renvoyé.
  • ROUTING_LOCATIONLa géométrie des résultats de géocodage représentant un emplacement proche du côté de la rue qui peut servir dans le cadre du calcul d’itinéraire est renvoyé. Il s’agit de l’option par défaut.
String
category
[category,...]
(Facultatif)

Limite les types d’emplacements que le localisateur recherche, éliminant les correspondances faussement positives et accélérant éventuellement le processus de recherche. Si aucune catégorie n’est utilisée, le géocodage est effectué sur toutes les catégories prises en charge. Toutes les valeurs de catégories ne sont pas prises en charge pour tous les emplacements et pays. Le paramètre Category (Catégorie) peut généralement être utilisé pour les opérations suivantes :

  • Limiter les appariements à des types d’emplacement spécifiques ou à des niveaux d’adresse
  • Éviter les appariements de remplacement aux niveaux d’adresse non désirés
  • Distinguer les recherches de coordonnées

Ce paramètre n’est pas pris en charge pour tous les localisateurs.

Reportez-vous à l’aide web de l’API REST pour obtenir de détails sur le filtrage par catégorie.

String
output_fields
(Facultatif)

Spécifie les champs de localisateur en sortie qui sont renvoyés dans les résultats de géocodage.

Remarque :

Ce paramètre peut être utilisé avec les localisateurs en entrée créés à l’aide de l’outil Créer un localisateur ou Créer un localisateur d’entités publié dans Enterprise version 10.9 ou ultérieure. Les localisateurs composites qui contiennent au moins un localisateur créé à l’aide de l’outil Créer un localisateur d’adresses ne prennent pas en charge ce paramètre.

  • ALL Inclut tous les champs de localisateur en sortie disponibles dans les résultats de géocodage. Il s’agit de l’option par défaut.
  • LOCATION_ONLYLe champ Shape est stocké si le résultat du géocodage est une classe d’entités. Les champs Shape X et Shape Y sont stockés si le résultat est un fichier .csv ou un fichier .xls. Les noms de champ d’origine du paramètre in_table sont conservés. Le ré-appariement n’est pas disponible avec cette option.
  • MINIMALAjoute les champs suivants qui décrivent l’emplacement et son niveau d’appariement avec les informations du localisateur dans les résultats de géocodage : Shape, Status, Score, Match_type, Match_addr et Addr_type. Les noms de champ d’origine de in_table sont conservés.
String

Sortie dérivée

NomExplicationType de données
out_feature_class

Classe d'entités en sortie.

Classe d’entités
out_table

Table en sortie au format CSV ou XLS, en fonction de la valeur du paramètre Output Type (Type en sortie).

Tableau

Exemple de code

Exemple GeocodeFile (script autonome)

Le script Python ci-dessous illustre l'utilisation de l'outil GeocodeFile dans un script autonome.

import arcpy
arcpy.SignInToPortal("https://<machine_name>/<portal_web_adaptor_name>", 
                     '<username>', '<password>')
# Input is a local table
input_table = r"C:\data\customers.csv"
# This tool works with locators on your portal
in_locator = "https://<machine_name>/server/rest/services/<service_name>/GeocodeServer/<service_name>"
# The easiest way to generate a field mapping is to run the tool in ArcGIS 
# Pro and right-click the green success ribbon and click "Copy Python command"
field_mapping = "'Address or Place' Address VISIBLE NONE;Address2 <None> VISIBLE NONE;Address3 <None> VISIBLE NONE;Neighborhood <None> VISIBLE NONE;
City <None> VISIBLE NONE;County <None> VISIBLE NONE;State <None> VISIBLE NONE;ZIP ZIP VISIBLE NONE;ZIP4 <None> VISIBLE NONE;Country <None> VISIBLE NONE"
output_type = "FEATURE_CLASS"
# Output folder for the output CSV, Excel, or GDB table. If user selects 
# FEATURE_CLASS output_type, a new GDB will be created in the 
# output_folder with the geocoding results
output_folder = r"C:\data\outputs"
output_name = "Geocoding_output"
# Optional geocoding parameters. Only some are supported depending on the 
# in_locator that you use.
country = None
location_type = "ROUTING_LOCATION"
category = "'Street Address'"
arcpy.geocoding.GeocodeFile(input_table, in_locator, field_mapping, output_type, 
                            output_folder, output_name, country, location_type, 
                            category)

Informations de licence

  • Basic: Requiert Privilège votre compte dans ArcGIS Enterprise pour que vous puissiez disposer du privilège Perform Analysis (Effectuer une analyse)
  • Standard: Requiert Privilège votre compte dans ArcGIS Enterprise pour que vous puissiez disposer du privilège Perform Analysis (Effectuer une analyse)
  • Advanced: Requiert Privilège votre compte dans ArcGIS Enterprise pour que vous puissiez disposer du privilège Perform Analysis (Effectuer une analyse)

Rubriques connexes