我正在尝试将 geojson 文件转换为 shapefile。
我正在尝试这种方式(我对Python很陌生,所以它可能是不正确的)。
import urllib, geojson, gdal
url= ' http://ig3is.grid.unep.ch/istsos/wa/istsos/services/ghg/procedures/operations/geojson?epsg=4326'
response = urllib.urlopen(url)
data = geojson.loads(response.read())
file = open ('data.geojson', 'w')
pickle.dump(data,file)
file.close()
ogr2ogr -f "ESRI Shapefile" destination_data.shp "data.geojson"
因此,我从 url 获取数据,将其放入文件中,当我尝试将其转换为 shapefile 时,出现此错误:
File "<stdin>", line 1
ogr2ogr -f "ESRI Shapefile" destination_data.shp "data.geojson"
^
SyntaxError: invalid syntax
由于我是新手,我尝试了在网上找到的解决方案。有什么方法可以使这项工作有效吗?
ogr2ogr 似乎是一个命令行程序 - 要使用它,您可能需要研究类似的东西subprocess.Popen():
import urllib, geojson, gdal, subprocess
url= ' http://ig3is.grid.unep.ch/istsos/wa/istsos/services/ghg/procedures/operations/geojson?epsg=4326'
response = urllib.urlopen(url)
data = geojson.loads(response.read())
with open('data.geojson', 'w') as f:
geojson.dump(data, f)
args = ['ogr2ogr', '-f', 'ESRI Shapefile', 'destination_data.shp', 'data.geojson']
subprocess.Popen(args)
编辑:回应评论 - 是的,pickle
在这种情况下,这不是写入文件的适当方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)