Instrução
Os itens em um arquivo geodatabase compactado (FGDB) podem ter funcionalidade limitada para cópia de segurança de dados. Ter os dados em um banco de dados permite um acesso mais fácil para visualizar os dados. Criar cópia de segurança de itens do ArcGIS Online para uma conexão de banco de dados com ArcGIS API for Python permite que vários itens sejam baixados, extraídos e copiados simultaneamente.
from arcgis.gis import GIS import arcpy import os import zipfile import glob import shutil arcpy.env.overwriteOutput = True
gis=GIS("https://arcgis.com","username","password") folders = [] root = r"Path To Location Where AGOL Items are Downloaded" items = ['ItemID1', 'ID2', 'ID3', 'ID4'] destination = r"Path To Location Where Downloaded zipped folders are extracted" outputPath = r"Full File Path to SDE Connection\<connectionname>.sde"
#a variável 'itens' pode ser substituída para obter todos os itens no ArcGIS Online se a necessidade for criar cópia de segurança de todos os itens for item in items: test = gis.content.get(item) fgdb_title = test.title fgdb_title=fgdb_title.replace('_', '') result = test.export(fgdb, "File Geodatabase") result.download(root) result.delete() folders.append(root +'\\' +fgdb_title + '.zip') print(folders)
para pasta em pastas: with zipfile.ZipFile(folder) as zf: folder.replace('_','') zf.extractall(destination)
Nota: A etapa 5 para remover os arquivos locais só é necessária se ocorrer um erro durante a execução do script devido a arquivos existentes.
para FGDB no FGDBlist: item_delete = (destination+FGDB+'\\') #Removes FGDBs in Destination folder(optional) shutil.rmtree(item_delete)
FGDBlist=os.listdir(destination) for FGDB in FGDBlist: gdb_var=(destination+FGDB+'\\') arcpy.env.workspace=(gdb_var) featureclasses = arcpy.ListFeatureClasses() print(featureclasses) for FC in featureclasses: rename = arcpy.Rename_management(FC, FC + "_copy", "FeatureClass") print(rename) arcpy.FeatureClassToFeatureClass_conversion(gdb_var + FC + "_copy", outputPath, FC + "_copy")
Obtenha ajuda de especialistas do ArcGIS
Baixe o Aplicativo de Suporte da Esri