Web レイヤーの共有を自動化

共有モジュールArcPy 関数と、公開キャッシュタイル キャッシュ、およびパッケージ ツールセット内のジオプロセシング ツールを組み合わせて使用すると、Python で Web レイヤーの共有、上書き、および置換を自動化することができます。

Web レイヤーの共有を自動化するには、2 つの方法 (共有モジュールで作成した共有ドラフトを使用して Web レイヤーを公開、パッケージを使用して Web レイヤーを公開) があります。 使用する方法は、公開する Web レイヤーのタイプによって異なります。 共有ドラフトを使用して公開する場合、ほとんどの Web レイヤーはサービス定義から公開されます。 パッケージから公開する場合、キャッシュは、パッケージとしてローカルに作成され、その後アップロードされて、Web レイヤーの公開に使用されます。

注意:

一部の Web レイヤー構成は、Python で公開することができません。 たとえば、関連付けられたマップ イメージ レイヤーおよび Web フィーチャ レイヤーを含むベクター タイル レイヤーは、アプリケーションのユーザー インターフェイスを使用して公開する必要があります。

共有ドラフトを使用した Web レイヤーの公開

Web レイヤーを公開するワークフローは、共有するプロジェクト内のマップまたはラスター データセットから開始します。

  1. 最初に、Map クラスの getWebLayerSharingDraft メソッドを使用して、共有ドラフトを作成します。 詳細については、FeatureSharingDraftMapImageSharingDraftTileSharingDraft、または SceneLayerSharingDraft をご参照ください。 Web シーン レイヤーの共有ドラフトを作成するには、Map クラスで listLayers メソッドを、SceneLayerSharingDraft クラスとともに使用します。 スタンドアロン テーブルの共有ドラフトを作成するには、ListTables 関数と FeatureSharingDraft または MapImageSharingDraft クラスを使用します。

    Web フィーチャ レイヤー、マップ イメージ レイヤー、またはスタンドアロン テーブルを上書きするには、共有ドラフトの overwriteExistingService プロパティを変更します。

    注意:

    このプロパティは、TileSharingDraft および SceneLayerSharingDraft ジオデータベースには使用できません。 別のワークフローも使用できます。 Web タイル レイヤーの場合、代わりに [Web レイヤーの置換 (Replace Web Layer)] ジオプロセシング ツールを使用します。 Web シーン レイヤーで、既存のアイテム ID を取得し、Web レイヤーを再公開する準備ができたら、Publish 関数の item_id パラメーターに既存のアイテム ID を指定します。

  2. 共有ドラフトが FeatureSharingDraftMapImageSharingDraft、または TileSharingDraft の場合、サービス定義をステージングして公開します。
    1. [サービスのステージング (Stage Service)] ジオプロセシング ツールを使用して、サービス定義ドラフトをステージングし、Web レイヤーの共有に必要なすべての情報を完全なサービス定義に統合します。
    2. [サービス定義のアップロード (Upload Service Definition)] ジオプロセシング ツールを使用して、サービス定義をアップロードし、Web レイヤーを公開します。
  3. 共有ドラフトが SceneLayerSharingDraft の場合、Publish 関数を使用して、関連付けられた Web フィーチャ レイヤーとともに Web シーン レイヤーを公開します。
  4. 注意:

    コンテンツを作成して、公開する権限のある ArcGIS Online または ArcGIS Enterprise アカウントで、ArcGIS Pro にサイン インする必要があります。

パッケージを使用した Web レイヤーの公開

Web タイル レイヤーとベクター タイル レイヤーの場合、ワークフローは、共有するプロジェクト内のマップから開始します。 Web シーン レイヤーと Web 標高レイヤーの場合、サポートされている入力データセットから開始します。

  1. 最初に、対応するジオプロセシング ツールを使用して、共有するタイプの Web レイヤーのパッケージを作成します。

    Web レイヤー タイプジオプロセシング ツール

    Web タイル レイヤー

    マップ タイル パッケージの作成

    ベクター タイル レイヤー

    ベクター タイル パッケージの作成

    Web シーン レイヤー

    シーン レイヤー パッケージを作成するツールは複数あります。 詳細については、シーン レイヤー パッケージの作成および共有をご参照ください。

    Web 標高レイヤー

    [タイル キャッシュの管理 (Manage Tile Cache)][タイル キャッシュのエクスポート (Export Tile Cache)]

    コンテンツの作成に使用したジオプロセシング ツール別の Web レイヤー
    ヒント:

    Web タイル レイヤーまたは Web 標高レイヤーのタイル パッケージを作成する前に、必要に応じて、[マップ サービス キャッシュ タイル スキーマの生成 (Generate Map Server Cache Tiling Scheme)] またはタイル キャッシュのタイル スキーマの生成ツールを使用し、マップまたは標高データセットの投影法で、タイル スキーマを生成します。 ArcGIS Online/Bing Maps/Google Maps タイル スキーマを使用する場合は、このステップをスキップできます。 詳細については、タイル パッケージの共有をご参照ください。

  2. 次に、[パッケージの共有 (Share Package)] ツールを使用し、パッケージを Web レイヤーとして ArcGIS Online または ArcGIS Enterprise にアップロードおよび公開します。
  3. 最後に、必要に応じて、[Web レイヤーの置換 (Replace Web Layer)] ツールを使用し、ポータル内の既存の Web レイヤーのコンテンツを新しい Web レイヤーのコンテンツに置き換えます。

    注意:

    Web 標高レイヤーを置き換えることはできません。

Python でのツールの使用についての詳細