ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Справка
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS Desktop

Полноценная профессиональная ГИС

ArcGIS Enterprise

ГИС предприятия

ArcGIS Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

ArcMap

  • На главную
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительные модули

Загрузить определение сервиса

  • Сводка
  • Использование
  • Синтаксис
  • Пример кода
  • Параметры среды
  • Информация о лицензиях

Сводка

Загружает и публикует ГИС-сервис на указанном ГИС-сервере на основе файла организованного определения сервиса (.sd).

Использование

  • Этот инструмент загружает и публикует ГИС-сервис на основе входного определения сервиса. Всякий раз, когда вы предоставляете общий доступ к сервису с помощью ArcGIS Desktop, этот инструмент запускается, и вы видите результат в окне геообработки Результаты.

  • Этот инструмент не загружает и не публикует файлы чернового определения сервиса (.sddraft). Если у вас есть файл чернового определения сервиса, вы можете преобразовать его в организованное определение сервиса с помощью инструмента Разместить сервис.

  • Используйте инструмент Войти на портал, чтобы подключиться к порталу ArcGIS Online.

Синтаксис

arcpy.server.UploadServiceDefinition(in_sd_file, in_server, {in_service_name}, {in_cluster}, {in_folder_type}, {in_folder}, {in_startupType}, {in_override}, {in_my_contents}, {in_public}, {in_organization}, {in_groups})
ПараметрОбъяснениеТип данных
in_sd_file

Файл определения сервиса (.sd) содержит всю информацию, необходимую для публикации ГИС-сервиса.

File
in_server

Подключение к серверу. Вы можете использовать подключения ArcGIS Server, перечисленные в узле ГИС-серверы в окне Каталог, или перейти в другую папку, где могут храниться файлы подключения к серверу.

При подключении к ArcGIS Online убедитесь, что набираете My Hosted Services для подключения к серверу с заглавной буквой в начале каждого слова и пробелами между ними.

ServerConnection
in_service_name
(Дополнительный)

Заменяет имя сервиса, указанное в определении сервиса в настоящее время, на новое имя.

String
in_cluster
(Дополнительный)

Изменяет кластер, которому был назначен сервис. Вы должны выбрать из кластеров, доступных на указанном сервере.

Прежние версии:

Кластеры в ArcGIS Enterprise 10.5.1 признаны устаревшими. Этот параметр будет игнорироваться серверами, которые не поддерживают множественные кластеры.

String
in_folder_type
(Дополнительный)

Задает источник папки. По умолчанию папка поступает из определения сервиса. Вы также можете выбрать папку, уже находящуюся на указанном сервере, или задать новую папку, которая будет создана после публикации этого сервиса.

  • NEW —Используется для создания новой папки.
  • EXISTING —Используется для указания папки, существующей на сервере.
  • FROM_SERVICE_DEFINITION —Используйте папку, уже указанную в определении сервиса. Используется по умолчанию.
String
in_folder
(Дополнительный)

Папка для сервиса. По умолчанию используется папка, уже указанная в определении сервиса. Если для папки выбрано NEW, укажите ее имя. Если выбрано EXISTING, можно выбрать одну из папок, существующих на сервере.

String
in_startupType
(Дополнительный)

Задает состояние старта сервиса сразу после публикации.

  • STARTED —Сервис запускается сразу после публикации.
  • STOPPED —Сервис не запускается после публикации. Необходимо запустить сервис вручную.
Boolean
in_override
(Дополнительный)

Задает, будут ли перезаписываться настройки общего доступа, заданные в определении сервиса. Эти свойства определяют, как и каким образом вы публикуете сервис на ArcGIS Online. Публикация сервиса с помощью ArcGIS Online позволяет использовать его другим людям.

  • OVERRIDE_DEFINITION —Настройки общего доступа, заданные в определении сервиса, перезаписываются новыми значениями.
  • USE_DEFINITION —Свойства общего доступа, в настоящее время установленные в определении сервиса, будут использоваться после публикации сервиса. Используется по умолчанию.

Для того, чтобы перезаписать свойства общего доступа, необходимо войти на ArcGIS Online .

Boolean
in_my_contents
(Дополнительный)

Задает способ публикации сервиса на ArcGIS Online. Все общие сервисы доступны через Мои ресурсы. Даже если вы хотите дать доступ лишь определенной группе в своей организации, сервис будет также распространяться через Мои ресурсы.

  • SHARE_ONLINE —Сервис публикуется на ArcGIS Online. Сервис будет показан в Мои ресурсы.
  • NO_SHARE_ONLINE —Сервис не будет публиковаться на ArcGIS Online и будет недоступен для других пользователей и клиентов ArcGIS Online из веб.

Для того, чтобы перезаписать свойства общего доступа, необходимо войти на ArcGIS Online .

Boolean
in_public
(Дополнительный)

Выберите, будет ли ваш сервис доступен для общественности.

  • PUBLIC —Сервис публикуется для широкой публики.
  • PRIVATE —Сервис не публикуется для широкой публики.

Для того чтобы переписать свойства общего доступа, необходимо войти на ArcGIS Online.

Boolean
in_organization
(Дополнительный)

Определяет публикацию сервиса в вашей организации.

  • SHARE_ORGANIZATION —Сервис публикуется для вашей организации.
  • NO_SHARE_ORGANIZATION —Сервис не публикуется для вашей организации.

Для того чтобы переписать свойства общего доступа, необходимо войти на ArcGIS Online.

Boolean
in_groups
[group_name,...]
(Дополнительный)

Список имен групп, которым предоставляется доступ к сервису.

Для того чтобы переписать свойства общего доступа, необходимо войти на ArcGIS Online.

String

Пример кода

UploadServiceDefinition, пример (окно Python)

Загружает и публикует определение сервиса на указанном сервере.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.UploadServiceDefinition_server("myMapService.sd", "GIS Servers/myServerConnection")
Пример процесса публикации (автономный скрипт)

Следующий скрипт демонстрирует процесс публикации с использованием команд инструментов Stage Service и Upload Service Definition.

# Name: StageService_UploadServiceDefinition_example2.py
# Description: Use a service definition draft to create a service definition
# and then upload and publish that service definition.
# Requirements: Connection to an ArcGIS Server or My Hosted Services

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inServiceDefinitionDraft = "myMapService.sddraft"
outServiceDefinition = "myMapService.sd"

# Execute StageService
arcpy.StageService_server(inServiceDefinitionDraft, outServiceDefinition)

# Set local variables
inSdFile = outServiceDefinition
inServer = "GIS Servers/myServerConnection"

# Execute UploadServiceDefinition
arcpy.UploadServiceDefinition_server(inSdFile, inServer)
UploadServiceDefinition, пример 2 (автономный скрипт)

Следующий скрипт просматривает все определения сервисов в папке и публикует их на ArcGIS Server.

# Name: UploadServiceDefinition_example3.py
# Description: Upload and publish all service definitions contained in a folder
# Requirements: Connection to an ArcGIS Server or My Hosted Services

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variable
inServer = "myServerConnection.ags"
print "Publishing to " + inServer

# Find all the service definitions (.sd or .sds) in a workspace and 
# upload\publish each one to an ArcGIS Server, Spaital Data Server, or My Hosted Services
sdList = arcpy.ListFiles("*.sd")
for inSdFile in sdList:
    print "Publishing " + sdName
    try:
        arcpy.UploadServiceDefinition_server(inSdFile, inServer)        
    except Exception, e:
        print e.message
UploadServiceDefinition, пример 3 (автономный скрипт)

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

# Name: UploadServiceDefinition_example5.py
# Description: Uploads an existing service definition and uses optional 
#              parameters to modify some details of the service
# Requirements: Connection to an ArcGIS Server or My Hosted Services

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inSdFile = "myMapService.sd"
inServer = "myServerConnection.ags"
inServiceName = "newServiceName"
inCluster = "myCluster"
inFolderType = "NEW"
inFolder = "newFolder"
inStartup = "STOPPED"
inOverride = "OVERRIDE_DEFINITION"
inMyContents = "SHARE_ONLINE"
inPublic = "PRIVATE"
inOrganization = "NO_SHARE_ORGANIZATION"
inGroups = "My Group"

# Execute UploadServiceDefinition
arcpy.UploadServiceDefinition_server(inSdFile, inServer, inServiceName, 
                                     inCluster, inFolderType, inFolder, 
                                     inStartup, inOverride, inMyContents, 
                                     inPublic, inOrganization, inGroups)
Пример перезаписи сервисов (автономный скрипт)

Следующий скрипт создает и загружает определение сервиса, которое можно использовать для перезаписи существующего сервиса.

# Name: StageService_example3_UploadServiceDefinition_example4.py
# Description: Creates a service definition that can be used to overwrite an 
#              existing service. When this service definition is published it 
#              will overwrite the existing service.
# Requirements: Connection to an ArcGIS Server, Spatial Data Server, 
#               or My Hosted Services


# Import system modules
import arcpy
import xml.dom.minidom as DOM 

# Set environment settings
arcpy.env.workspace = "C:/data"

# Set local variables
inServiceDefinitionDraft = "myMapService.sddraft"
outServiceDefinition = "myMapService.sd"
newType = 'esriServiceDefinitionType_Replacement'

xml = os.path.join(arcpy.env.workspace, inServiceDefinitionDraft)
doc = DOM.parse(xml)
descriptions = doc.getElementsByTagName('Type')
for desc in descriptions:
    if desc.parentNode.tagName == 'SVCManifest':
        if desc.hasChildNodes():
            desc.firstChild.data = newType
outXml = xml    
f = open(outXml, 'w')     
doc.writexml( f )     
f.close()

# Execute StageService
arcpy.StageService_server(inServiceDefinitionDraft, outServiceDefinition)

# Set local variables
inSdFile = outServiceDefinition
inServer = "GIS Servers/myServerConnection"

# Execute UploadServiceDefinition
arcpy.UploadServiceDefinition_server(inSdFile, inServer)

Параметры среды

Этот инструмент не использует параметры среды геообработки

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы

  • Общий обзор группы инструментов Публикация

ArcGIS Desktop

  • На главную
  • Документация
  • Поддержка

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог Esri
  • Конференция пользователей
  • Саммит разработчиков
Esri
Расскажите нам, что вы думаете.
Copyright © 2021 Esri. | Конфиденциальность | Правовая информация