您的位置:首页 > 编程语言 > Python开发

Python自动发布Image service的实现

2015-08-17 16:59 585 查看

使用Python自动发布地图服务已经在上一篇博客中讲到,使用Python创建.sd服务定义文件,实现脚本自动发布ArcGIS服务,下面是利用Python自动发布Image
service的实现。

-----------华丽的分割线-----------
<span style="font-size:14px;"># -*- coding: utf-8 -*-
# ---------------------------------------------------------------------------
# PublishImageService.py
# Created on: 2015-08-15 15:49:27.00000
#   (generated by HUIHUI)
# Usage:  
# Description: python publish service
# ---------------------------------------------------------------------------

# Import arcpy module
import os as OS
import arcpy

# createGISServerConnectionFile,define local variable
wrkpc = r"\\qnap.geoWindPower.com\WPServices\hh\PublishService\ToolData"
out_folder_path = wrkpc
con_Filename = "test.ags"
server_url = r"http://gisserver018207.geoWindPower.com/arcgis"
staging_folder_path = wrkpc
username = "admin"
password = "admin"

arcpy.mapping.CreateGISServerConnectionFile("PUBLISH_GIS_SERVICES",
                                            out_folder_path,
                                            con_Filename,
                                            server_url,
                                            "ARCGIS_SERVER",
                                            False,
                                            staging_folder_path,
                                            username,
                                            password,
                                            "S***E_USERNAME")

# define local variables
wrkpc = r"\\qnap.geoWindPower.com\WPServices\hh\PublishService\ToolData"
mxdpath = OS.path.join(wrkpc,"mymxd.mxd")
mapDoc = arcpy.mapping.MapDocument(mxdpath)
servicename = "GeoTurbine_Test"
sddraft = OS.path.join(wrkpc,"GeoTurbine_Test.sddraft")
sd = OS.path.join(wrkpc,"GeoTurbine_Test.sd")
connectionfile = "test.ags"
summary = "this is a test"
tags = "this is a test"

# creste service definition draft
analysis = arcpy.mapping.CreateMapSDDraft(mapDoc,
                                          sddraft,
                                          servicename,
                                          "ARCGIS_SERVER",
                                          connectionfile,
                                          False,
                                          "WP_MapService",
                                          summary,tags)

#stage and upload the service if the sddraft analysis didn't contain errors
if analysis['errors'] == {}:
    # excute StageService
    arcpy.StageService_server(sddraft,sd)
    # excute UploadServiceDfinition
    arcpy.UploadServiceDefinition_server(sd,connectionfile)
else:
    # if the sddraft analysis contained errors,display them
    print analysis['errors']
</span>


--------欢迎来访,拒绝转载--------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: