共享包
摘要
通过将包上传到 ArcGIS Online 对其进行共享
用法
- 支持的包类型有:
- 地理处理包(.gpk、.gpkx)
- 图层包(.lpk、.lpkx)
- 定位器包 (.gcpk)
- 地图包(.mpk、.mpkx)
- 地图切片包 (.tpk)
- 移动地图包 (.mmpk)
- 场景图层包 (.spk)
- 矢量切片包 (.vtpk)
- 工程包和工程模板(.ppkx、.aptx)
在 ArcGIS Pro 中使用此工具时,您无法输入 ArcGIS Online 或 Portal for ArcGIS 的用户名或密码。此工具将从 ArcGIS Pro 本身获取凭据。您必须先登录并连接到 ArcGIS Online 或 Portal for ArcGIS,然后才能使用此工具共享包。
- 要与 ArcGIS Online 或 Portal for ArcGIS 共享包文件,必须填写摘要信息和一个或多个标签。在线搜索这些包文件时,摘要信息和标签连同可选包文件的描述和制作者名单一起发挥作用。
- 如果 ArcGIS Online 或 Portal for ArcGIS 组织中已经存在同名的包,则该包将被覆盖。
- 要将包通过公共帐户共享到 ArcGIS Online,需要将 Esri 全球帐户注册为 ArcGIS Online 成员。要创建并注册 Esri 全球帐户,请访问 arcgis.com/home/signup.html。

将包共享至使用 OAUTH2 身份验证的门户时,该工具在 ArcGIS 应用程序外的 Python 脚本中是限制使用的。例如,ArcGIS.com 门户便使用这种身份验证方法。要进行身份验证,您必须直接从应用程序连接到该门户。只有在应用程序处于打开状态并连接到门户,或者您连接到使用传统身份验证机制并允许传递用户名和密码的门户时,才能在 Python 脚本中使用此工具。
语法
参数 | 说明 | 数据类型 |
in_package | 输入图层 (.lpk、.lpkx)、场景图层 (.spk)、地图 (.mpk、.mpkx)、地理处理(.gpk、.gpkx)、地图切片 (.tpk)、移动地图 (.mmpk)、矢量切片 (.vtpk)、地址定位器 (.gcpk) 或工程 (.ppkx、.aptx) 包文件。 | File |
username | ArcGIS Online 或 Portal for ArcGIS 用户名。将包共享至使用 OAUTH2 身份验证的门户时,该参数在 Python 脚本中是限制使用的。有关详细信息,请参阅用法说明。 | String |
password | ArcGIS Online 或 Portal for ArcGIS 密码。将包共享至使用 OAUTH2 身份验证的门户时,该参数在 Python 脚本中是限制使用的。有关详细信息,请参阅用法说明。 | Encrypted String |
summary | 包文件的摘要信息。在 ArcGIS.com 上,摘要信息将显示在数据包的项目信息中。 | String |
tags | 用于描述和识别包的标记。各个标记之间以逗号或分号分隔。 | String |
credits (可选) | 包的制作者。通常是创作和提供包内容的组织的名称。 | String |
public (可选) | 指定是否将输入包共享并提供给所有人。
| Boolean |
groups [group_name,...] (可选) | 共享包的群组列表。 | String |
organization (可选) | 指定输入包仅可用于组织内部还是公开共享给所有人。
| Boolean |
代码示例
用于获取图层包并将其共享给 ArcGIS Online 的代码示例。
import arcpy
arcpy.SharePackage_management(r"C:\states.lpk","username","password","this is a summary","tag1, tag2","Credits","MYGROUPS","My_Group")
查找位于指定文件夹中的所有地图包,并在 ArcGIS Online 上共享这些地图包。
# Name: SharePackageExample.py
# Description: Find all the map packages that reside in a specified folder and share them on ArcGIS online.
# import system modules
import os
import arcpy
# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = "C:/data/my_packages"
# Loop through the workspace, find all the layer and map packages
for mpk in arcpy.ListFiles("*.mpk"):
print("Sharing " + mpk)
arcpy.SharePackage_management(mpk,"username","password","This is a summary","tag1, tag2","Credits","MYGROUPS","My_Group")