通过结合使用共享模块中的 ArcPy 函数与发布、缓存、切片缓存和包工具集中的地理处理工具,可借助 Python 自动共享、覆盖和替换 Web 图层。
可通过两种方式自动共享 Web 图层:可使用通过共享模块创建的共享草稿或使用包发布 Web 图层。 应使用的方法取决于要发布的 Web 图层类型。 如果采用共享草稿方法,则将从服务定义发布大多数 Web 图层。 如果使用包方法,则该缓存是在本地作为包创建的,然后将其上传并用于发布 Web 图层。
注:
某些 Web 图层配置不能使用 Python 发布。 例如,必须使用应用程序用户界面发布具有关联地图图像图层和/或 Web 要素图层的矢量切片图层。
使用共享草稿发布 Web 图层
发布 Web 图层的工作流始于要共享的项目或栅格数据集中的地图。
- 首先,使用 Map 类中的 getWebLayerSharingDraft 方法创建共享草稿。 有关详细信息,请参阅 FeatureSharingDraft、MapImageSharingDraft、TileSharingDraft 或 SceneLayerSharingDraft。 要为 Web 场景图层创建共享草稿,将 Map 类上的 listLayers 方法与 SceneLayerSharingDraft 类搭配使用。 要为独立表创建共享草稿,将 ListTables 函数与 FeatureSharingDraft 或 MapImageSharingDraft 类搭配使用。
- 如果共享草稿为 FeatureSharingDraft、MapImageSharingDraft 或 TileSharingDraft,暂存并发布服务定义。
- 如果共享草稿为 SceneLayerSharingDraft,使用 Publish 函数发布具有关联 Web 要素图层的 Web 场景图层。
注:
您将需要使用具有内容创建与发布权限的 ArcGIS Online 或 ArcGIS Enterprise 账户登录 ArcGIS Pro。
使用包发布 Web 图层
对于 Web 切片图层和矢量切片图层,工作流始于要共享的工程中的地图。 对于 Web 场景图层和 Web 高程图层,工作流始于受支持的输入数据集。
- 首先,为要使用相应的地理处理工具或工具共享的 Web 图层类型创建包。
Web 图层类型 地理处理工具或工具 创建地图切片包 创建矢量切片包 可通过多种工具创建场景图层包。 有关详细信息,请参阅创建和共享场景图层包。
使用地理处理工具创建其内容的 web 图层 提示:
在为 Web 切片图层或 Web 高程图层创建切片包之前,可选择使用生成地图服务器缓存切片方案或生成切片缓存切片方案工具在地图或高程数据集的投影中生成切片方案。 如果要使用 ArcGIS Online/Bing Maps/Google Maps 切片方案,可以跳过此步骤。 有关详细信息,请参阅共享切片包。
- 接下来,使用共享包工具将包作为 web 图层上传并发布到 ArcGIS Online 或 ArcGIS Enterprise。
- 最后,可以选择使用替换 Web 图层工具将门户中现有 Web 图层的内容替换为新 Web 图层的内容。
注:
无法替换 Web 高程图层。