使用ArcPy實現創建ags文件

ArcPy創建ags文件

由於項目需要,在項目開發過程中,需要自己生成一個ags文件,ags文件是ESRI用來保存ArcGIS Server連接信息的文件。故本人根據ArcPy接口,通過Toolbox實現ArcGIS Server文件的自動生成。

ToolBox界面如下圖所示:ToolBox

在執行過程中用到的腳本語言:

def create_ags(server_url, username, password,out_folder_path):
    out_name = Domain2IP(server_url)
    use_arcgis_desktop_staging_folder = False

    if not os.path.exists(out_folder_path):
        os.makedirs(out_folder_path)
    postfix = '.ags'
    analysis =arcpy.mapping.CreateGISServerConnectionFile("ADMINISTER_GIS_SERVICES",                                              out_folder_path,                             out_name + postfix                                server_url,                              'ARCGIS_SERVER',                                     use_arcgis_desktop_staging_folder,                                out_folder_path,
username,                                                password,                                       'SAVE_USERNAME')

def Domain2IP(url):
    try:
        pattern = re.compile(r'\d+[\.]\d+[\.]\d+[\.]\d+')
        if re.findall(pattern, url):
            hostname = url.split('/')[2]
            return hostname[0 : hostname.index(':')]
        else:
            hostname = url.split('/')[2]
            return socket.gethostbyname(hostname)
    except:
        print 'Error'

執行後的結果展示:

結果

執行本ToolBox所需環境:

  • ArcGIS Desktop
  • ArcGIS Pro

資源

注:源碼查看DataShare

發佈了53 篇原創文章 · 獲贊 29 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章