Автоматизация публикации веб-слоев

Вы можете автоматизировать публикацию, перезаписывание и замену веб-слоев с помощью Python, используя комбинации функций ArcPy в Модуле публикаций и инструменты геообработки в наборах инструментов Публикация, Кэширование, Полистный кэш и Упаковка.

Есть два способа автоматизировать публикацию веб-слоев: вы можете опубликовать веб-слои из определения сервиса или из пакетов. Подход, который вы должны использовать, зависит от типа веб-слоя, который вы хотите опубликовать. Если вы используете способ с определением сервиса, веб-слой публикуется из определения сервиса. Если вы используете подход с пакетом, кэш создается локально как пакет, который потом загружается и используется для публикации веб-слоя.

Примечание:

Некоторые конфигурации веб-слоев не могут быть опубликованы с помощью Python. Следующее должно быть опубликовано с помощью пользовательского интерфейса приложения:

  • Слой векторных листов со связанным слоем изображения карты и/или векторным веб-слоем
  • Слой веб-сцены со связанным слоем изображения карты и/или векторным веб-слоем

Публикация веб-слоев из определений сервисов

Рабочий процесс публикации веб-слоя начинается с карты в проекте или набора растровых данных, которые вы хотите опубликовать.

  1. Для начала создайте черновик определения сервиса с помощью метода getWebLayerSharingDraft из класса Map. Для получения дополнительной информации см. раздел FeatureSharingDraft, MapImageSharingDraft или TileSharingDraft. Чтобы создать черновик определения сервиса для отдельной таблицы, используйте функцию ListTables с классом FeatureSharingDraft. Чтобы создать черновик определения сервиса для веб-слоя изображения, используйте функцию CreateImageSDDraft.

    Чтобы перезаписать векторный веб-слой, слой изображения карты или отдельную таблицу, измените свойство overwriteExistingService черновика публикации.

    Примечание:

    Это свойство недоступно для TileSharingDraft или CreateImageSDDraft. Для веб-слоя листов используйте вместо этого инструмент геообработки Заменить веб-слой.

  2. Затем воспользуйтесь инструментом геообработки Организовать сервис, чтобы подготовить определение сервиса. В ходе подготовки в черновике определения сервиса будет собрана вся информация, которая необходима для публикации веб-слоя в полном определении сервиса.
  3. Наконец, запустите инструмент геообработки Загрузить определение сервиса для отправки определения сервиса на сервер и публикации веб-слоя.
  4. Примечание:

    Вам нужно будет войти в AllSource с учетной записью ArcGIS Online или ArcGIS Enterprise, у которой есть права на создание и публикацию ресурсов.

Публикация веб-слоев из пакетов

Для веб-слоев листов и слоев векторных листов рабочий процесс начинается с карты в проекте, которую вы хотите опубликовать. Для веб-слоев сцен и веб-слоев высот он начинается с поддерживаемого входного набора данных.

  1. Сначала создайте пакет для типа веб-слоя, который вы хотите опубликовать, с помощью соответствующих инструментов геообработки.

    Тип веб-слояИнструмент или инструменты геообработки

    Веб-слой листов

    Создать пакет листов карты

    Слой векторных листов

    Создание пакета векторных листов

    Веб-слой сцены

    Есть несколько инструментов, которые создают пакеты слоев сцены. Дополнительные сведения см. в Создание и публикация пакетов слоя сцены

    Веб-слой высот

    Управление полистным кэшем и Экспорт полистного кэша

    Веб-слои по инструментам геообработки, используемым для создания ресурса.
    Подсказка:

    Перед созданием пакета листов для веб-слоя листов или веб-слоя высот можно использовать инструмент Построить схему листов кэша Map Server или Построить схему листов полистного кэша для создания схемы листов в проекции вашей карты или набора данных высот. Вы можете пропустить этот шаг, если вы хотите использовать схему листов ArcGIS Online/Bing Maps/Google Maps. Более подробно см. в разделе Публикация пакета листов.

  2. Далее используйте инструмент Опубликовать пакет, чтобы загрузить и опубликовать пакет как веб-слой на ArcGIS Online или ArcGIS Enterprise.
  3. В конце, при необходимости, используйте инструмент Заменить веб-слой, чтобы заменить ресурс существующего веб-слоя на портале ресурсом нового веб-слоя.

    Примечание:

    Веб-слои высот не могут быть заменены.

Дополнительные сведения об инструментах в Python