Daha çox

ArcGIS OSMLoader arcpy .enkod xətası


Bir geofabrick .bz2 faylını http://arcscripts.esri.com/details.asp?dbid=15137 saytından OSM Sadə Yükləyici vasitəsi ilə bir fayl coğrafi verilənlər bazasına yükləməyə çalışıram. Lakin hər dəfə bu sətirdə uğursuz olur:

frow.setValue ("Node_ID", node [0] .encode ("Latin-1", "əvəz et")) Səhv mesajı belədir:

İş vaxtı xətası 999999: "dəyər növü Node_ID sahə növü ilə uyğun gəlmir"

Təəssüf ki, python ilə tanış deyiləm, buna görə də bu səhvi düzəltməyə cəhd edə bilmirəm. Arc 10.2 ilə işləyirəm və bu 9.2 qövsü üçün yazılmışdır.

İnşallah kimsə buna bir az aydınlıq gətirər.

Budur kod bloku

elif element == '/node' və hasvalidtags and ftype == 0:

node ilə #done, formasını yükləməyə imkan verir frow = nodecursor.newrow () nodepnt.x = float (node ​​[1]) nodepnt.y = float (node ​​[2]) ** frow.setValue ("Node_ID", node [0) ] .encode ("Latin-1", "əvəz et")) ** for standardFields üçün f: frow.setValue (f, ") sTag üçün ftags: frow.setValue (sTag [0], str (sTag [1]) )) frow.SetValue ('şekil', nodepnt) #Formanı yükləyin nodecursor.insertrow (frow) taggednodecount+= 1 hasvalidtags = False

9.2 versiyasını istifadə etməyi dayandırmalı və 10.2 üçün OpenStreetMap üçün ArcGIS Redaktorundan istifadə etməlisiniz. Bir müddətdir istifadə edirdim və birdən çox OSM məlumat dəstini heç bir problem olmadan yönləndirilə bilən şəbəkələrə emal edə bildim. GitHub -da burada çox ətraflı bir sənəd var.


Videoya baxın: Python в ArcGIS - ТОП-10 самых востребованных функций,, Esri CIS (Sentyabr 2021).