ArcPy将地图文档 (.mxd) 文件转换为服务定义草稿 (.sddraft) 文件

xiaoxiao2021-02-28  175

在上一篇中讲到了ArcPy的使用和主要参考,所以这里就不再重复,有不明白环境和使用的请参考上一篇博客 ArcPy创建ArcGIS Server连接文件。

本文参考地址:ArcGIS 帮助文档

话不多说,直接上代码:

import arcpy # define local variables wrkspc = 'D:/Project/' #工作目录 mapDoc = arcpy.mapping.MapDocument(wrkspc + 'WuHan.mxd') #工作目录下的地图文档 con = wrkspc + 'test163.ags' #工作目录下的ArcGIS连接文件 service = 'WuHanTest' #发布服务名称 sddraft = wrkspc + service + '.sddraft' sd = wrkspc + service + '.sd' summary = 'Tiles of WuHan' #服务摘要 tags = 'WuHan,Tiles' #服务标签 # create service definition draft analysis = arcpy.mapping.CreateMapSDDraft(mapDoc, sddraft, service, 'ARCGIS_SERVER', con, True, None, summary, tags) # stage and upload the service if the sddraft analysis did not contain errors if analysis['errors'] == {}: # Execute StageService arcpy.StageService_server(sddraft, sd) # Execute UploadServiceDefinition arcpy.UploadServiceDefinition_server(sd, con) else: # if the sddraft analysis contained errors, display them print analysis['errors']

参数说明: mapDoc:要发布地图服务保存的地图文档文件,只需修改’WuHan.mxd’为你自己的文档名称即可。 con = wrkspc + ‘test163.ags’:这里的test163.ags就是上一篇中生成的连接文件。 服务摘要和服务标签这两个按你自己的实际情况填写。

运行后可以在ArcCatalog->GIS服务器->(你自己管理的服务器),刷新一下,就会看到自己刚发布的服务。

注意:如果再次运行此程序,需要将工作目录下的.sd文件删除,否则会报错,sd文件已存在。如果还有其他错误,可以回到工作目录下,打开txt文件,里面会有错误信息。一般都是上面那几个参数不对,改正即可。

转载请注明原文地址: https://www.6miu.com/read-43414.html

最新回复(0)