HOW TO
Anlagen können einem Layer in ArcGIS Pro vor der Veröffentlichung in ArcGIS Online oder Portal for ArcGIS hinzugefügt werden. Dies wird in der Dokumentation unter ArcGIS Pro: Hinzufügen oder Entfernen von Dateianlagen beschrieben. Wenn ein Layer mehrere Anlagen enthält, kann es mühsam sein, die Gesamtgröße der Anlagen manuell zu berechnen. Darüber hinaus kann die Gesamtgröße aufgrund der unterschiedlichen Größen auf dem Datenträger, während der Veröffentlichung und durch die Konvertierung von Byte in Kilobyte variieren. In diesem Artikel werden die Schritte zum Berechnen der Gesamtgröße mit der ArcGIS API for Python in einem eigenständigen Python-Skript oder ArcGIS Notebooks beschrieben.
import arcgis from arcgis import GIS import pandas as pd
#For ArcGIS Online
gis = GIS('https://arcgis.com', 'username', 'password')
print("Connected")
#For Portal for ArcGIS
gis = GIS('https://<machine>.<domain>/<web adaptor name>', 'username', 'password', verify_cert=False)
print("Connected")
item = '<item_ID>' layer = gis.content.get(item) ids = layer.layers[0] fs = ids.query(where="1=1") oids = [f.attributes["OBJECTID"] for f in fs.features]
Note: Edit the index value in 'ids = item.layers[0]' based on the layers that hold the attachments. For example, to calculate the total attachment size in the second layer, replace 0 with 1 in the code.
attached = [ids.attachments.get_list(oid=oid) for oid in oids] print(attached)
print("Total size: " + str(ids.attachments.search(as_df=True)['SIZE'].sum()))
#If additional word is unnecessary, the following line can be used:
print(ids.attachments.search(as_df=True)['SIZE'].sum())
Im Folgenden finden Sie ein voll funktionsfähiges Beispielskript und die Ergebniskonsole. Die berechnete Dateigröße wird in Byte angegeben.
import arcgis
from arcgis import GIS
import pandas as pd
gis = GIS('https://arcgis.com', 'user1', 'password1!')
print("Connected")
item = '80d00e2301844ou2435p9284fu87bf'
layer = gis.content.get(item)
ids = layer.layers[0]
fs = ids.query(where="1=1")
oids = [f.attributes["OBJECTID"] for f in fs.features]
attached = [ids.attachments.get_list(oid=oid) for oid in oids]
print (attached)
print("Total size: " + str(ids.attachments.search(as_df=True)['SIZE'].sum()))

Artikel-ID: 000031782
Unterstützung durch ArcGIS-Experten anfordern
Beginnen Sie jetzt mit dem Chatten