Instrução
Ao trabalhar com serviços de feição no ArcGIS Online, é útil criar uma cópia de todos os serviços de feição no ArcGIS Online como cópia de segurança ou se houver limitações de espaço de armazenamento. Baixar cada serviço de feição individualmente pode ser demorado, especialmente em grandes volumes. O script Python a seguir permite que os usuários baixem uma cópia de todos os itens de serviço do feição. Os itens podem ser excluídos com segurança assim que o processo for concluído.
O script a seguir executa uma pesquisa dos itens de serviço da feição do usuário e exporta os itens como um único arquivo no formato desejado. Apõs o arquivo ser criado no ArcGIS Online, ele pode ser baixado para o caminho do arquivo especificado na seção de download do script.
import arcgis from arcgis.gis import GIS
gis = GIS(None,'username', 'password', verify_cert=False)
def downloadUserItems(owner, downloadFormat): try: # Search items by username items = gis.content.search('owner:{0}'.format(owner)) print(items) # Loop through each item and if equal to Feature service then download it for item in items: if item.type == 'Feature Service': result = item.export('sample {}'.format(item.type), downloadFormat) result.download(r'file path of where to store the download') # Delete the item after it downloads to save space (OPTIONAL) result.delete() except Exception as e: print(e)
downloadUserItems('username', downloadFormat='Shapefile')
A seguir está um exemplo de script completo:
import arcgis from arcgis.gis import GIS gis = GIS(None,'username', 'password', verify_cert=False) # Download all data from a user def downloadUserItems(owner, downloadFormat): try: # Search items by username items = gis.content.search('owner:{0}'.format(owner)) print(items) # Loop through each item and if equal to Feature service then download it for item in items: if item.type == 'Feature Service': result = item.export('sample {}'.format(item.type), downloadFormat) result.download(r'file path of where to store the download') # Delete the item after it downloads to save on space result.delete() except Exception as e: print(e) # Function takes in two parameters. Nome de usuário e o tipo de formato de download downloadUserItems('username', downloadFormat='Shapefile')
A função downloadUserItems recebe dois parâmetros:
Nota: Hã vários formatos de arquivo para a saída e estes incluem, mas não estão limitados a - shapefile (SHP), CSV, KML, FGDB, coleção de feições.
Obtenha ajuda de especialistas do ArcGIS
Baixe o Aplicativo de Suporte da Esri