Étiquette | Explication | Type de données |
Table en entrée | Table ou fichier .csv d’adresses ou de lieux à géocoder. | Table View |
Service de géocodage par lots en entrée | Service de géocodage du portail avec prise en charge du géocodage par lots qui sera utilisé pour géocoder la table d’adresses et de lieux. Remarque :Si le service est un localisateur personnalisé ou un localisateur ArcGIS StreetMap Premium, il doit être publié dans ArcGIS Enterprise on Kubernetes 11.5 ou version ultérieure avec la fonctionnalité Batch Geocode (Géocodage par lots) activée. | String |
Appariement des champs d’adresse | Appariement des champs d’adresse utilisés par le localisateur aux champs de la table ou du fichier d’adresses en entrée. Spécifiez Champ unique si l’adresse complète est stockée dans un seul champ dans la table ou le fichier en entrée, par exemple, 303 Peachtree St NE, Atlanta, GA 30308. Spécifiez Champs multiples si les adresses en entrée sont divisées en plusieurs champs, tels que Address, City, State et ZIP dans le cas d’une adresse générale aux États-Unis. Spécifiez Champ unique et Champ de pays si l’adresse complète et le pays sont répartis sur des champs distincts, tels que Address (303 Peachtree St NE, Atlanta, GA 30308) et Country (USA). 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 et les champs d’adresse sont 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 constituant deux champs 100 Main st Apt 140 lors du géocodage. Si vous n’appariez pas un champ d’adresse en entrée facultatif utilisé par le localisateur d’adresses à un champ de la table ou du fichier d’adresses en entrée, indiquez qu’il n’existe pas d’appariement en utilisant <Aucun> au lieu d’un nom de champ. | Field Info |
Classe d’entités en sortie | Classe d’entités géocodées en sortie. Remarque :L’enregistrement de la sortie au format shapefile n’est pas pris en charge en raison de limitations liées aux shapefiles. | Feature Class |
Pays ou région | Pays auxquels se limite la recherche des adresses géocodées. L’indication d’un pays contribue à accroître la précision du géocodage. Dans le cas où aucun pays n’est indiqué, le géocodage est effectué pour tous les pays pris en charge par le localisateur. Lorsque vous spécifiez Single Field and Country Field (Champ unique et champ de pays) dans le paramètre Adress Field Mapping (Appariement de champs d’adresse), la valeur de ce paramètre est remplacée. | String |
Type de localisation préféré (Facultatif) | Spécifie la géométrie en sortie de votre choix allant être renvoyée pour les correspondances PointAddress. Si l’emplacement favori n’existe pas dans les données, l’emplacement par défaut est renvoyé. Voir l’aide Web de ArcGIS REST API pour en savoir plus sur le paramètre locationType pour geocodeAddresses.
| String |
Catégorie (Facultatif) | Restreint les types de lieux que le localisateur recherche. Cela permet d’éliminer les faux positifs et les correspondances d’adresses non souhaitées, et de distinguer les recherches de coordonnées. Ce paramètre peut accélérer le processus de recherche. Si aucune catégorie n’est utilisée, le géocodage est effectué pour toutes les catégories prises en charge. Toutes les valeurs de catégorie ne sont pas prises en charge pour tous les emplacements et tous les pays. Consultez l’aide Web de ArcGIS REST API pour en savoir plus sur le filtrage des catégories. | String |
Champs en sortie (Facultatif) | Spécifie les champs de localisateur en sortie qui sont renvoyés dans les résultats de géocodage. Les noms de champ d’origine indiqués dans le paramètre Table en entrée sont conservés si l’option Localisation uniquement, Minimal ou Champs minimaux et d’utilisateur est sélectionnée.
| String |
Synthèse
Permet de géocoder une table ou un fichier .csv d’adresses ou de lieux de grande taille de façon asynchrone à l’aide de l’API REST batchGeocode. Les résultats géocodés sont renvoyés sous forme de classe d’entités et ArcGIS Pro n’est pas requis pour diviser la requête en lots de plus petite taille.
Avec cet outil, le géocodage peut être isolé et mis à l’échelle sur le serveur, indépendamment d’autres processus. Par exemple, lorsqu’une tâche est soumise à ArcGIS World Geocoding Service, un matériel dédié est attribué pour traiter le fichier, ce qui accélère le temps de réponse. Vous pouvez sélectionner au choix ArcGIS World Geocoding Service ou un service hébergé dans ArcGIS Enterprise on Kubernetes 11.5 ou version ultérieure avec votre cluster Kubernetes configuré.
Remarque :
Pour réaliser des opérations de géocodage à l’aide de ArcGIS World Geocoding Service, vous avez besoin d’un compte d’organisation ArcGIS et de crédits. Le compte d’organisation doit disposer de suffisamment de crédits pour satisfaire à la totalité de la demande de géocodage.
L’estimation des crédits est affichée en haut de l’outil, dans la fenêtre Geoprocessing (Géotraitement) lorsque le portail actif est ArcGIS Online.
Utilisation
Si vous utilisez ArcGIS World Geocoding Service comme valeur pour le paramètre Service de géocodage par lots en entrée, la table ou le fichier en entrée doit contenir au moins 100 000 enregistrements.
Si vous utilisez ArcGIS World Geocoding Service comme valeur pour le paramètre Service de géocodage par lots en entrée, la valeur du paramètre Table en entrée est stockée temporairement sur votre portail ArcGIS Online jusqu’à ce que la tâche soit terminée. Une fois la tâche terminée, le fichier temporaire est supprimé du portail.
Cet outil prend en charge un nombre maximal d’enregistrements de 50 millions. Si la table contient plus de 50 millions d’enregistrements, divisez-la en plusieurs tables contenant chacune 50 millions d’enregistrements au maximum. Si l’entrée est un fichier .csv, il doit utiliser le codage UTF-8 avec un indicateur d’ordre des octets (BOM).
Remarque :
Vous pouvez utiliser une application tierce comme Microsoft Excel ou Notepad++ pour ajouter un paramètre BOM UTF-8 au fichier .csv.
La première ligne du fichier .csv en entrée est utilisée comme noms de champ pour la classe d’entités en sortie, en plus des champs ajoutés à partir du localisateur. Les noms de champs ne peuvent pas contenir d’espaces ou de caractères spéciaux autres qu’un tiret bas.
Remarque :
Lorsque vous utilisez l’outil dans Python, les champs de la valeur du paramètre table_field_name doivent être écrits dans la même casse que ceux de la valeur du paramètre input_address_field pour apparier les champs à l’aide du paramètre address_fields.
Lorsque le localisateur est publié dans ArcGIS Enterprise on Kubernetes et que la fonctionnalité Batch Geocode (Géocodage par lots) est activée, deux services sont créés : un service de serveur de géocodage et un service GPServer. Lorsque vous utilisez l’outil dans Python, la valeur du paramètre in_batch_service doit être le GPServer, par exemple https://machinename.domain.com/server/rest/services/service_name/GPServer.
Les résultats de géocodage sont enregistrés dans la même référence spatiale que le service. Vous pouvez modifier la référence spatiale de la sortie en définissant l’environnement Output Coordinate System (Système de coordonnées en sortie).
Les résultats du géocodage contiendront toutes les informations de géocodage pertinentes, notamment le score, le statut et l’adresse appariée de chaque enregistrement, ainsi que les valeurs de la table ou du fichier en entrée d’origine. Les résultats du géocodage produits par cet outil comprennent un instantané de la table en entrée d’origine. Par conséquent, l’ajout ou la mise à jour de valeurs dans la table d’origine n’implique pas la mise à jour des résultats dans la classe d’entités en sortie. Réexécutez l’outil pour créer une classe d’entités en sortie contenant ces modifications.
Les paramètres suivants ne sont pas pris en charge pour tous les services par lots utilisés par la valeur du paramètre Input Batch Service (Service de géocodage par lots en entrée) : Country or Region (Pays ou région), Preferred Location Type (Type de localisation privilégié) et Category (Catégorie).
Cet outil ne prend pas en charge les sélections. Pour géocoder une portion de table, exportez la partie concernée et exécutez l’outil sur cette nouvelle table plus petite.
Paramètres
arcpy.geocoding.BatchGeocode(in_table, in_batch_service, address_fields, out_feature_class, country, {location_type}, {category}, {output_fields})
Nom | Explication | Type de données |
in_table | Table ou fichier .csv d’adresses ou de lieux à géocoder. | Table View |
in_batch_service | Service de géocodage du portail avec prise en charge du géocodage par lots qui sera utilisé pour géocoder la table d’adresses et de lieux. Remarque :Si le service est un localisateur personnalisé ou un localisateur ArcGIS StreetMap Premium, il doit être publié dans ArcGIS Enterprise on Kubernetes 11.5 ou version ultérieure avec la fonctionnalité Batch Geocode (Géocodage par lots) activée. | String |
address_fields |
Chaque appariement de champ dans ce paramètre est au format input_address_field, table_field_name, où input_address_field est le nom du champ d’adresse en entrée spécifié par le localisateur et table_field_name est le nom du champ correspondant dans la table ou le fichier d’adresses à géocoder. Spécifiez un champ d’entrée unique si l’adresse complète est stockée dans un seul champ de la valeur in_table, 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. Vous pouvez également spécifier un seul champ en entrée qui stocke l’adresse complète, par exemple, 303 Peachtree St NE, Atlanta, GA 30308, et un champ qui stocke le pays associé à l’adresse, par exemple, É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 et les champs d’adresse sont 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 constituant deux champs 100 Main st Apt 140 lors du géocodage. Si vous n’appariez pas un champ d’adresse en entrée facultatif utilisé par le localisateur d’adresses à un champ de la table ou du fichier d’adresses en entrée, indiquez qu’il n’existe pas d’appariement en utilisant <None> au lieu d’un nom de champ. | Field Info |
out_feature_class | Classe d’entités géocodées en sortie. Remarque :L’enregistrement de la sortie au format shapefile n’est pas pris en charge en raison de limitations liées aux shapefiles. | Feature Class |
country [country,...] | Pays auxquels se limite la recherche des adresses géocodées. L’indication d’un pays contribue à accroître la précision du géocodage. Si aucun pays n’est spécifié, le géocodage est effectué pour tous les pays pris en charge par le localisateur. Lorsqu’un champ de la valeur du paramètre in_table est apparié au champ Country dans le paramètre address_fields, la valeur de ce paramètre est remplacée. Indiquez la valeur sous la forme d’une liste de codes de pays à 2 ou 3 caractères séparés par des virgules. Reportez-vous à la colonne des codes de pays pris en charge pour connaître la valeur en entrée à utiliser. | String |
location_type (Facultatif) | Spécifie la géométrie en sortie de votre choix allant être renvoyée pour les correspondances PointAddress. Si l’emplacement favori n’existe pas dans les données, l’emplacement par défaut ADDRESS_LOCATION est renvoyé. Voir l’aide Web de ArcGIS REST API pour en savoir plus sur le paramètre locationType pour geocodeAddresses.
| String |
category [category,...] (Facultatif) | Restreint les types de lieux que le localisateur recherche. Cela permet d’éliminer les faux positifs et les correspondances d’adresses non souhaitées, et de distinguer les recherches de coordonnées. Ce paramètre peut accélérer le processus de recherche. Si aucune catégorie n’est utilisée, le géocodage est effectué pour toutes les catégories prises en charge. Toutes les valeurs de catégorie ne sont pas prises en charge pour tous les emplacements et tous les pays. Consultez l’aide Web de ArcGIS REST API pour en savoir plus sur le filtrage des catégories. | String |
output_fields (Facultatif) | Spécifie les champs de localisateur en sortie qui sont renvoyés dans les résultats de géocodage. Les noms de champ d’origine indiqués dans le paramètre in_table sont conservés si l’option LOCATION_ONLY, MINIMAL ou MINIMAL_AND_USER est spécifiée.
| String |
Exemple de code
Le script suivant montre comment utiliser la fonction BatchGeocode pour géocoder un fichier .csv avec le ArcGIS World Geocoding Service et renvoyer output_fields MINIMAL dans le résultat du géocodage.
Remarque :
Si vous utilisez des localisateurs sur votre portail, assurez-vous d’être connecté à celui-ci et de l’avoir défini comme portail actif dans ArcGIS Pro. Pour accéder à un localisateur situé sur un portail qui n’est pas le portail actif, authentifiez-vous à l’aide de la fonction SignInToPortal.Remarque :
Lors de l’utilisation de ArcGIS World Geocoding Service, cette opération peut consommer des crédits.
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)
Le script ci-dessous illustre l’utilisation de la fonction BatchGeocode pour géocoder une table avec un service de géocodage par lots du portail avec les output_fields par défaut dans le résultat du géocodage.
Remarque :
Si vous utilisez des localisateurs sur votre portail, assurez-vous d’être connecté à celui-ci et de l’avoir défini comme portail actif dans ArcGIS Pro. Pour accéder à un localisateur situé sur un portail qui n’est pas le portail actif, authentifiez-vous à l’aide de la fonction 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)
Environnements
Informations de licence
- Basic: Nécessite votre compte dans ArcGIS Enterprise pour que vous puissiez disposer du privilège Perform Analysis (Effectuer une analyse)
- Standard: Nécessite votre compte dans ArcGIS Enterprise pour que vous puissiez disposer du privilège Perform Analysis (Effectuer une analyse)
- Advanced: Nécessite votre compte dans ArcGIS Enterprise pour que vous puissiez disposer du privilège Perform Analysis (Effectuer une analyse)
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?