Сводка
Извлекает содержимое пакета в указанную папку. Распакованное содержимое входного пакета будет добавлено в выходную папку.
Использование
Поддерживаются следующие типы пакетов:
- Пакеты геообработки (.gpk и .gpkx)
- Пакеты слоев (.lpk и .lpkx)
- Пакеты локатора (.gcpk)
- Пакеты карт (.mpk и .mpkx)
- Пакеты мобильных карт (.mmpk)
- Пакеты проектов и Шаблоны проектов (.ppkx и .aptx)
- Пакеты листов (.tpk и .tpkx)
- Пакеты векторных листов (.vtpk)
Выходная папка может быть как новой папкой, так и существующей папкой. При распаковке в существующую папку содержимое пакета будет добавлено к существующим файлам и вложенным папкам. Если выходная папка содержит извлеченное содержимое пакета, существующее содержимое будет перезаписано.
Прикрепленные файлы из пакетов с вложениями будут распакованы в подпапку commondata\userdata\ выходной папки. Обычно файлы в пакете - это вспомогательные файлы, например .pdf, .docx или изображение. Чтобы открыть эти файлы, необходимо перейти к нужной папке в Windows Explorer.
При извлечении пакетов векторных листов (.vtpk) содержимое пакета будет извлечено в выходную папку. Формат хранения кэша может быть преобразован из компактного (файлы .bundle) в полистный. (Файлы .pbf) с помощью параметра Тип формата хранения. Вы можете использовать извлеченные файлы .pbf в других клиентских приложениях, таких как Mapbox.
При извлечении пакетов листов (.tpk, .tpkx или .vtpk), параметр Пакет кэша отключается.
Синтаксис
arcpy.management.ExtractPackage(in_package, output_folder, {cache_package}, {storage_format_type}, {create_ready_to_serve_format})
Parameter | Объяснение | Тип данных |
in_package | Извлекаемый входной пакет. | File |
output_folder | Выходная папка, в которой будет находиться содержимое пакета. Если указанная папка не существует, то она будет создана. | Folder |
cache_package (Дополнительный) | Задает, будет ли копия пакета кэшироваться в вашем профиле. При извлечении пакета выходные данные сначала распаковываются в ваш пользовательский профиль и к ним добавляется уникальный ID перед тем, как они будут скопированы в указанную в параметре output_folder директорию. При загрузке и извлечении последующих версий одного и того же пакета будет обновлено только это местоположение. При использовании этого параметра вам не нужно вручную создавать кэшированную версию пакета в вашем профиле пользователя. Этот параметр не включен, если входной пакет является пакетом векторных листов (.vtpk) или пакетом листов (.tpk и .tpkx).
| Boolean |
storage_format_type (Дополнительный) | Задает формат хранения извлеченного кеша. Этот параметр применим только в том случае, если входной пакет является пакетом векторных листов (.vtpk).
| String |
create_ready_to_serve_format (Дополнительный) | Указывает что будет создан готовый к использованию формат для ArcGIS Enterprise. Этот параметр включен только если входной пакет является пакетом векторных листов (.vtpk) или пакетом листов (.tpkx).
| Boolean |
Пример кода
Следующее окно скрипта Python демонстрирует, как использовать функцию ExtractPackage для создания готовых к использованию наборов данных кеша, которые можно использовать в рабочих процессах публикации 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")
Найдите все пакеты геообработки в указанной папке и используйте функцию ExtractPackage для извлечения содержимого в указанную папку.
# 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")
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да