Resumen
Extrae el contenido de un paquete a una carpeta especificada. La carpeta de salida se actualizará con los contenidos extraídos del paquete de entrada.
Uso
Los siguientes son tipos de paquetes compatibles:
- Paquetes de geoprocesamiento (.gpk y .gpkx)
- Paquetes de capas (.lpk y .lpkx)
- Paquetes de localizadores (.gcpk)
- Paquetes de mapas (.mpk y .mpkx)
- Paquetes de mapas móviles (.mmpk)
- Paquetes de proyecto y plantillas de proyecto (.ppkx y .aptx)
- Paquetes de teselas (.tpk y .tpkx)
- Paquetes de teselas vectoriales (.vtpk)
La carpeta de salida puede ser una carpeta nueva o una carpeta existente. Cuando extrae a una carpeta existente, el contenido del paquete se incorporará a los archivos y carpetas existentes. Si la carpeta de salida contiene el contenido extraído del paquete, el contenido existente se sobrescribirá.
Los archivos adjuntos de los paquetes que tienen adjuntos se extraerán en la subcarpeta commondata\userdata\ de la carpeta de salida. Normalmente, los archivos de un paquete son complementarios; por ejemplo, un .pdf, un .docx o una imagen. Debe examinar el directorio extraído en el Explorador de Windows para abrir estos archivos.
Al extraer paquetes de teselas vectoriales (.vtpk), el contenido del paquete se extraerá en la carpeta de salida. El formato de almacenamiento en caché se puede convertir de compacto (archivos .bundle) a expandido (archivos .pbf) utilizando el parámetro Tipo de formato de almacenamiento. Puede utilizar los archivos .pbf extraídos en otras aplicaciones del cliente, como Mapbox.
Al extraer paquetes de teselas (.tpk, .tpkx o .vtpk), el parámetro Almacenar paquete en caché está deshabilitado.
Sintaxis
arcpy.management.ExtractPackage(in_package, output_folder, {cache_package}, {storage_format_type}, {create_ready_to_serve_format})
Parámetro | Explicación | Tipo de datos |
in_package | Paquete de entrada que será extraído. | File |
output_folder | Carpeta de salida que contendrá el contenido del paquete. Si no existe la carpeta especificada, se creará una carpeta. | Folder |
cache_package (Opcional) | Especifica si se almacena una copia del paquete en la caché de su perfil. Al extraer un paquete, la salida se extrae primero a su perfil de usuario y se le incorpora un Id. único antes de hacer una copia al directorio especificado en el parámetro output_folder. La descarga y extracción de las versiones posteriores del mismo paquete solo actualiza esta ubicación. Si se usa este parámetro, no es necesario crear manualmente una versión en caché del paquete en su perfil de usuario. Este parámetro no está habilitado si el paquete de entrada es un paquete de teselas vectoriales (.vtpk) o un paquete de teselas (.tpk y .tpkx).
| Boolean |
storage_format_type (Opcional) | Especifica el formato de almacenamiento de la caché extraída. Este parámetro solo se aplica cuando el paquete de entrada es un paquete de teselas vectoriales (.vtpk).
| String |
create_ready_to_serve_format (Opcional) | Especifica si se creará un formato listo para servir para ArcGIS Enterprise. Este parámetro solo está habilitado cuando el paquete de entrada es un paquete de teselas vectoriales (.vtpk) o un paquete de teselas (.tpkx).
| Boolean |
Muestra de código
El siguiente script de la ventana de Python muestra cómo utilizar la función ExtractPackage para generar datasets de caché listos para servir que se pueden utilizar en los flujos de trabajo de publicación de ArcGIS Enterprise.
import arcpy
arcpy.management.ExtractPackage(r"C:\Data\packages\MyVectorPackage.vtpk",
r"C:\Data\packages\Extracted", "CACHE",
"COMPACT", "READY_TO_SERVE_CACHE_DATASET")
Encontrar todos los paquetes de geoprocesamiento dentro de una carpeta especificada y utilizar la función ExtractPackage para extraer el contenido a la carpeta especificada.
# Name: ExtractPackage.py
# Description: Find Geoprocessing Packages in a specified folder and extract contents.
import arcpy
import os
arcpy.env.overwriteOutput = True
# set folder that contains packages to extract
arcpy.env.workspace = "C:/geoprocessing/gpks"
wrksp = arcpy.env.workspace
for gpk in arcpy.ListFiles("*.gpk"):
print("Extracting... " + gpk)
arcpy.ExtractPackage_management(gpk, os.path.splitext(gpk)[0])
print("done")
Entornos
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí