arcgis自動發布服務問題記錄

2021-10-19 21:17:09 字數 1134 閱讀 8698

場景:體積過大的影像資料在分發,儲存,使用中很不方便,圖層過多的向量資料在顯示時可能會有些卡頓,因此在該平台裡以服務化的形式儲存該類資料,並在平台中管理起這些資料,如果要達成這個目的,手工一一發布資料不現實。

解決方案:

在這裡並不需要多大的工程,因此python的後台框架選擇了flask。

服務的影像原始檔需要儲存在與arcgis軟體同乙個伺服器下。且資料夾要賦予arcgis server賬戶完全控制的許可權。在發布服務的過程中會產生一些中間檔案,如果沒有讀寫許可權,會引發一些錯誤。

發布之前要事先將儲存原始檔的路徑註冊到arcgis server中,節省資料上傳的時間,因為一旦把資料夾註冊上去了,待發布的資料就不需要再拷貝到arcgis server中了,但實測用arcgis server站點註冊並不起作用,原因未知,需要用arcmap中的catalog註冊才生效。

無論影像還是向量資料,發布的時候都最好儲存為mxd工程檔案,然後使用arcpy發布mxd的方法去發布,這樣更穩定一些,實測影像資料直接拿tif去發布,速度上和穩定性上差一些,偶爾會發布失敗。用mxd工程還可以發布一些多圖層資料。

服務發布成功之後,可能需要獲取包括服務的圖層資訊在內的一些資訊,可以利用getcapabilities請求,返回的是個xml檔案,使用合適的python的xmlreader類庫解析即可,例如

import xml.sax

from xml.dom.minidom import parsestring

# 建立乙個 xmlreader

parser = xml.sax.make_parser()

# turn off namepsaces

parser.setfeature(xml.sax.handler.feature_namespaces, 0)

res=requests.get(xmlreq)

xml_dom = parsestring(res.text)

collection = xml_dom.documentelement

capability = collection.getelementsbytagname("capability")[0]

ability")[0

]

ArcGIS 發布Feature服務

win10 arcgis10.4 1 開啟arcmap,載入sde中匯入的檔案,也可以載入shp資料來源指向sde中檔案 2 儲存成mxd,然後點share as service 3 publish a service選擇發布的服務,取名 4 勾選上feature access,然後點analyze...

arcgis發布服務的總結

1 arcgis 9.3 發布服務 如果 用地是資料庫的方式,發布的時候 容易 在切快取的時候報錯,解決辦法就是 匯出shp檔案件,重新設定mxd 圖層的資料來源。然後在發布。就ok了 2 arcgis 10.1 發布服務時 如果 動態服務有亂碼 你可能用的是shp檔案做的資料檔案 則可以 匯出為m...

通過Python指令碼自動發布ArcGIS服務

通常我們使用arccatalog或者arcgis server manager等圖形介面工具來發布arcgis服務,然而有些情況下,比如需要發布的服務數量很多,而且需要不定期隨時發布的時候,再使用這些工具進行人工操作就顯得力不從心了。arcgis的強大之處就在於其為我們提供了多種選擇,我們可以通過p...