共享包 (数据管理)

摘要

通过将包上传到 ArcGIS Online 或 ArcGIS Enterprise 对其进行共享。

使用情况

  • 支持的包类型如下:

    • 地理处理包(.gpk、.gpkx)
    • 图层包(.lpk、.lpkx)
    • 定位器包 (.gcpk)
    • 地图包(.mpk、.mpkx)
    • 切片包(.tpk、.tpkx)
    • 移动地图包 (.mmpk)
    • 场景图层包 (.slpk)
    • 矢量切片包(.vtpk)
    • 工程包和工程模板(.ppkx、.aptx)

  • 在 ArcGIS Pro 中使用此工具时,您无法输入 ArcGIS Online 或 ArcGIS Enterprise 用户名和密码。此工具将从 ArcGIS Pro 本身获取凭据。您必须先登录并连接到 ArcGIS Online 或 ArcGIS Enterprise,然后才能使用此工具共享包。

  • 要与 ArcGIS Online 或 ArcGIS Enterprise 共享包,必须填写摘要信息和一个或多个标签。在线搜索这些包时,摘要信息和标签连同可选包文件的描述和制作者名单一起发挥作用。

  • 如果 ArcGIS Online 或 ArcGIS Enterprise 组织中已经存在同名的包,则该包将被覆盖。

  • 如果要共享切片包、场景图层包或矢量切片包,则可以选择将其自动发布为相应类型的 Web 图层。(切片包将发布为 web 切片图层,场景图层包将发布为 web 场景图层,且矢量切片包将发布为矢量切片图层。) 要成功发布 Web 图层,您必须在活动门户帐户中拥有必要的权限。

  • 要将包通过公共帐户共享到 ArcGIS Online,需要将 Esri 全球帐户注册为 ArcGIS Online 成员。要创建和注册 Esri 全球帐户,请转至 arcgis.com/home/signup.html。

  • 注:

    将包共享至使用 OAUTH2 身份验证的门户时,该工具在 ArcGIS 应用程序外的 Python 脚本中是限制使用的。例如,ArcGIS Online 便使用这种身份验证方法。要进行身份验证,您必须直接从应用程序连接到该门户。只有在应用程序处于打开状态并连接到门户,或者您连接到使用传统身份验证机制并允许传递用户名和密码的门户时,才能在 Python 脚本中使用此工具。

参数

标注说明数据类型
输入包

输入图层(.lpk、.lpkx)、场景图层 (.slpk)、地图(.mpk、.mpkx)、地理处理(.gpk、.gpkx)、切片(.tpk、.tpkx)、移动地图 (.mmpk)、矢量切片 (.vtpk)、地址定位器 (.gcpk) 或工程(.ppkx、.aptx)包文件。

File
用户名

ArcGIS Online 或 Portal for ArcGIS 用户名。

工具对话框中不包含此参数。您必须从应用程序右上角的登录选项登录门户。

String
密码

ArcGIS Online 或 ArcGIS Enterprise 密码。

工具对话框中不包含此参数。您必须从应用程序右上角的登录选项登录门户。

Encrypted String
汇总

包的摘要信息。在 ArcGIS Online 或 ArcGIS Enterprise 上,摘要信息将显示在包的项目信息中。

String
标签

用于描述和识别包的标记。各个标记之间以逗号或分号分隔。

String
制作者名单
(可选)

包的制作者。通常是创作和提供包内容的组织的名称。

String
共享给所有人
(可选)

指定是否将输入包共享并提供给所有人。

  • 选中 - 将包共享给所有人。
  • 未选中 - 将包共享给输入包所有者及任意所选群组。  这是默认设置。
Boolean
群组
(可选)

共享包的群组列表。

String
仅在组织内共享
(可选)

指定输入包仅可用于组织内部还是公开共享给所有人。

  • 所有人— 将包共享给所有人。这是默认设置。
  • 在我的组织中— 包将仅在组织内部共享。
Boolean
发布 Web 图层
(可选)

指定是否将包作为 Web 图层发布到门户。仅支持切片包、矢量切片包和场景图层包。

  • 未选中 - 包将被上传且不被发布。这是默认设置。
  • 选中 - 包将被上传并发布为具有相同名称的 web 图层。
Boolean
文件夹
(可选)

在门户上为包指定现有文件夹或新文件夹的名称。如果发布了 Web 图层,则系统会将其存储在同一文件夹中。

String

派生输出

标注说明数据类型
工具已成功执行

上传包并发布 Web 图层(如果指定)的结果。成功时返回 True。

布尔型
包项目 ID

包的门户项目 ID。

字符串
发布结果

包含 Web 图层的服务 URL 和门户项目 ID 的 JSON 响应。

字符串

arcpy.management.SharePackage(in_package, username, password, summary, tags, {credits}, {public}, {groups}, {organization}, {publish_web_layer}, {portal_folder})
名称说明数据类型
in_package

输入图层(.lpk、.lpkx)、场景图层 (.slpk)、地图(.mpk、.mpkx)、地理处理(.gpk、.gpkx)、切片(.tpk、.tpkx)、移动地图 (.mmpk)、矢量切片 (.vtpk)、地址定位器 (.gcpk) 或工程(.ppkx、.aptx)包文件。

File
username

ArcGIS Online 或 ArcGIS Enterprise 用户名。将包共享至使用 OAUTH2 身份验证的门户时,该参数在 Python 脚本中是限制使用的。有关详细信息,请参阅用法说明。

String
password

ArcGIS Online 或 ArcGIS Enterprise 密码。将包共享至使用 OAUTH2 身份验证的门户时,该参数在 Python 脚本中是限制使用的。有关详细信息,请参阅用法说明。

Encrypted String
summary

包的摘要信息。在 ArcGIS Online 或 ArcGIS Enterprise 上,摘要信息将显示在包的项目信息中。

String
tags

用于描述和识别包的标记。各个标记之间以逗号或分号分隔。

String
credits
(可选)

包的制作者。通常是创作和提供包内容的组织的名称。

String
public
(可选)

指定是否将输入包共享并提供给所有人。

  • EVERYBODY— 将包共享给所有人。
  • MYGROUPS— 包将与包的所有者及任意所选群组共享。这是默认设置。
Boolean
groups
[group_name,...]
(可选)

共享包的群组列表。

String
organization
(可选)

指定输入包仅可用于组织内部还是公开共享给所有人。

  • EVERYBODY— 将包共享给所有人。这是默认设置。
  • MYORGANIZATION— 包将仅在组织内部共享。
Boolean
publish_web_layer
(可选)

指定是否将包作为 Web 图层发布到门户。仅支持切片包、矢量切片包和场景图层包。

  • FALSE—包将被上传且不被发布。这是默认设置。
  • TRUE—包将被上传并发布为具有相同名称的 web 图层。
Boolean
portal_folder
(可选)

在门户上为包指定现有文件夹或新文件夹的名称。如果发布了 Web 图层,则系统会将其存储在同一文件夹中。

String

派生输出

名称说明数据类型
out_results

上传包并发布 Web 图层(如果指定)的结果。成功时返回 True。

布尔型
package_item_id

包的门户项目 ID。

字符串
publish_results

包含 Web 图层的服务 URL 和门户项目 ID 的 JSON 响应。

字符串

代码示例

SharePackage 示例 1(Python 窗口)

以下脚本可将图层包上传到活动门户。

import arcpy
arcpy.SharePackage_management(r"C:\states.lpkx", "username", "password", 
                              "My Summary", "tag1, tag2", "My Credits", 
                              "MYGROUPS", "My Group")
SharePackage 示例 2(Python 窗口)

以下脚本可将切片包上传到活动门户并将其发布为 Web 图层。

import arcpy
arcpy.SharePackage_management(r"C:\states.tpk", "username", "password", 
                              "My Summary", "tag1, tag2", "My Credits", 
                              "MYGROUPS", "My Group", "MYORGANIZATION", "TRUE", 
                              "My Folder")
SharePackage 示例 3(独立脚本)

以下脚本可查找位于指定文件夹中的所有地图包,并将其上传到活动门户。

# Name: SharePackageExample.py
# Description:  Find all map packages that reside in a specified folder 
#               and upload them to the active portal.
# 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 to find all map packages 
for mpkx in arcpy.ListFiles("*.mpkx"):
    print("Uploading " + mpkx)
    arcpy.SharePackage_management(mpkx, "username", "password", 
                                  "My Summary", "tag1, tag2", 
                                  "My Credits", "MYGROUPS", "My Group")

环境

特殊情况

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题