zoukankan      html  css  js  c++  java
  • arcpy自动发布服务01

    因为太多的服务需要发布,后期考虑使用arcpy脚本自动发布服务。

    以下是预研记录。

    arcgis server 10.2.2 的python是64位的,服务器上安装vscode ,要选择使用64位版本的python ,并参考如下配置

      

    其次,arcgis server发布服务的数据源需要是 file GeoDatabase,或者是SDE 的,而不能是 mdb或者shapefile 。看官方文档:

    不然就会报这样的错误, 不可访问,其实数据源都可以连接。

     初始版本

    #coding=utf-8
    import arcpy
    import arcpy.mapping as mapping
    import os
    folder=r'd:out'
    files=os.listdir(folder)
     
    for f in files:
        if not f.endswith(".mxd"):
            continue
        service=f.replace(".mxd","")
        mxdpath=os.path.join(folder,f)
        print f
        sddraft=mxdpath.replace(".mxd",".sddraft")
        mxd=mapping.MapDocument(mxdpath)
        mapping.CreateMapSDDraft(mxd,sddraft,service) #将地图文档 (.mxd) 文件转换为服务定义草稿 (.sddraft) 文件。
        analysis=mapping.AnalyzeForSD(r'd:out	est3.sddraft')  #分析服务定义草稿 (.sddraft) 文件以便在将服务定义草稿文件转换为服务定义 (.sd) 文件之前确定适用性和潜在性能问题的来源           
        sd=mxdpath.replace(".mxd",".sd")
        insever=r'connection.ags'
        if analysis['errors']=={}:
            arcpy.StageService_server(sddraft,sd) #函数StageService_server将服务定义草稿(.sddraft)转换成服务定义;sd为生成的服务定义,默认情况下跟草稿服务定义写入同一目录;过渡完成后,输入的服务定义草稿即被删除
            arcpy.UploadServiceDefinition_server(sd,insever) #根据服务定义文件上传发布GIS服务至特定的服务器
        else: 
            print(analysis['errors'])

    发布成功

     

    connection.ags创建

    # -*- coding: utf-8 -*-
    import arcpy
    import os
    import xml.dom.minidom as DOM
    
    out_folder_path='d:out'
    out_name = 'connection.ags'
    server_url = 'http://192.168.119.233:6080/arcgis/manager/'
    use_arcgis_desktop_staging_folder = False
    staging_folder_path = out_folder_path
    username = 'arcgisadmin'
    password = 'arcgisadmin'
    out_file_path = os.path.join(out_folder_path, out_name)
    if os.path.exists(out_file_path):
        os.remove(out_file_path)
    arcpy.mapping.CreateGISServerConnectionFile('ADMINISTER_GIS_SERVICES', 
                                                out_folder_path,
                                                out_name,
                                                server_url,
                                                'ARCGIS_SERVER',
                                                use_arcgis_desktop_staging_folder,
                                                staging_folder_path,
                                                username,
                                                password,
                                                True)
    print 'over'
  • 相关阅读:
    联想 Vibe Shot(Z90-3) 免recovery 获取ROOT权限 救砖 VIBEUI V3.1_1625
    联想 Z5S(L78071)免解锁BL 免rec 保留数据 ROOT Magisk Xposed 救砖 ZUI 10.5.370
    联想 Z5(L78011) 免解锁BL 免rec 保留数据 ROOT Magisk Xposed 救砖 ZUI 10.5.254
    联想 S5 Pro(L78041)免解锁BL 免rec 保留数据 ROOT Magisk Xposed 救砖 ZUI 5.0.123
    第二阶段 冲刺八
    第二阶段 冲刺七
    第二阶段 冲刺六
    第二阶段 冲刺五
    代码大全阅读笔记03
    学习进度十二
  • 原文地址:https://www.cnblogs.com/yansc/p/13735977.html
Copyright © 2011-2022 走看看