HOW TO

Kopieren von Metadaten aus einem vorhandenen Service in ein neues Element über einen REST-Endpunkt mithilfe der ArcGIS API for Python

Last Published: April 23, 2021

Zusammenfassung

Vorhandene Service-Metadaten können unter Verwendung der ArcGIS API for Python in ein neues Element in ArcGIS Online oder ArcGIS Enterprise kopiert werden. Dies kann besonders nützlich sein, um innerhalb der ganzen Organisation für Einheitlichkeit zu sorgen, wenn mehrere Daten betroffen sind.

Vorgehensweise

Nachfolgend wird das Kopieren der Metadaten aus einem vorhandenen Service beschrieben. Es gibt zwei Methoden, um die Metadaten zu kopieren: aus einem Feature-Layer oder aus einem Kartenservice.

Verwenden von Feature-Layern

  1. Importieren Sie die erforderlichen Module.
import arcgis from arcgis.gis import GIS from arcgis.features import FeatureLayer
  1. Geben Sie die Klasse FeatureLayer() an, um die Elemente vom Service-Endpunkt abzurufen.
gis = GIS("https://arcgis.com", "Username", "Password") url = '<Feature Layer Service URL>' layer = FeatureLayer(url)
  1. Legen Sie die Metadaten aus dem Service für die jeweiligen Variablen fest.
itemTags = layer.properties.documentInfo.Keywords itemDescription = layer.properties.serviceDescription itemSnippet = layer.properties.documentInfo.Subject itemTitle = layer.properties.documentInfo.Title
  1. Erstellen Sie in ArcGIS Online ein neues Element mit den Informationen aus dem vorhandenen Service.
wmsUrl = '<URL to the service>' props = {'title': itemTitle, 'type': 'Feature Service', 'url': '<URL to the service>', 'tags': itemTags, 'description': itemDescription, 'snippet': itemSnippet} wmsItem = gis.content.add(item_properties=props, data=wmsUrl)
Im Folgenden ist ein Beispiel für das gesamte Skript dargestellt:
import arcgis from arcgis.gis import GIS from arcgis.features import FeatureLayer gis = GIS("https://arcgis.com", "Username", "Password") url = 'https://services.arcgis.com/Wl7Y1m92PbjtJs5n/arcgis/rest/services/workers_dec6d6e11b564e338fb3254626cee2f0/FeatureServer' layer = FeatureLayer(url) itemTags = layer.properties.documentInfo.Keywords itemDescription = layer.properties.serviceDescription itemSnippet = layer.properties.documentInfo.Subject itemTitle = layer.properties.documentInfo.Title wmsUrl = 'https://domain.esri.com:6443/arcgis/rest/services' props = {'title': itemTitle, 'type': 'Feature Service', 'url': 'https://domain.esri.com:6443/arcgis/rest/services', 'tags': itemTags, 'description': itemDescription, 'snippet': itemSnippet} wmsItem = gis.content.add(item_properties=props, data=wmsUrl)
Verwenden eines Kartenservice
  1. Importieren Sie die erforderlichen Module.
import arcgis from arcgis.gis import GIS from arcgis.mapping import MapImageLayer
  1. Geben Sie die Klasse MapImageLayer() an, um die Elemente vom Service-Endpunkt abzurufen.
gis = GIS("https://arcgis.com", "Username", "Password") url = '<Map Service URL>' layer = MapImageLayer(url)
  1. Legen Sie die Metadaten aus dem Service für die jeweiligen Variablen fest.
itemTags = layer.item_info['tags'] itemDescription = layer.item_info['description'] itemSnippet = layer.item_info['summary'] itemTitle = layer.item_info['title'] itemTumbnail = layer.thumbnail()
  1. Erstellen Sie ein neues Element mit den Informationen aus dem vorhandenen Service.
wmsUrl = '<URL to the service>' props = {'title': itemTitle, 'type': 'Map Service', 'url': '<Url to the service>', 'tags': itemTags, 'description': itemDescription, 'snippet': itemSnippet} wmsItem = gis.content.add(item_properties=props, data=wmsUrl, thumbnail= itemTumbnail)
Im Folgenden ist ein Beispiel für das gesamte Skript dargestellt:
import arcgis from arcgis.gis import GIS from arcgis.mapping import MapImageLayer gis = GIS("https://arcgis.com", "Username", "Password") url = 'https://sampleserver6.arcgisonline.com/arcgis/rest/services/DamageAssessment/MapServer' layer = MapImageLayer(url) itemTags = layer.item_info['tags'] itemDescription = layer.item_info['description'] itemSnippet = layer.item_info['summary'] itemTitle = layer.item_info['title'] itemTumbnail = layer.thumbnail() wmsUrl = 'https://domain.esri.com:6443/arcgis/rest/services' props = {'title': itemTitle, 'type': 'Map Service', 'url': 'https://domain.esri.com:6443/arcgis/rest/services', 'tags': itemTags, 'description': itemDescription, 'snippet': itemSnippet} wmsItem = gis.content.add(item_properties=props, data=wmsUrl, thumbnail= itemTumbnail)

Artikel-ID:000019020

Hilfe von ArcGIS-Expert*innen erhalten

Technischen Support kontaktieren

Die Esri Support-App herunterladen

Zu den Download-Optionen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden