首先,我安装了pygeobuf。
安装后,我不知道如何使用它。该文档称它不适用于Windows。
在Windows中,我尝试了各种各样的方法,但仍然失败了。
在Windows命令行中,
python (get into interpreter)
import geobuf
geobuf.encode("city_streets.geojson", "c.pbf")
Traceback (most recent call last):
File "", line 1, in
File "C:\PYTHON27\lib\site-packages\geobuf-1.1.0-py2.7.egg\geobuf_init_.py"
, line 8, in encode
return Encoder().encode(*args)
File "C:\PYTHON27\lib\site-packages\geobuf-1.1.0-py2.7.egg\geobuf\encode.py",
line 30, in encode
self.e = pow(10, precision) # multiplier for converting coordinates into int
egers
TypeError: unsupported operand type(s) for ** or pow(): 'int' and 'str'
你能告诉我我错在哪里吗?
答案 0 :(得分:0)
encode()
有2个参数,一个是加载的json
文件,第二个是可选的精度值。
正确用法如下:
import json
import geobuf
# replace with path to city_streets file
with open("city_streets.geojson") as file:
loadedJson = json.load(file)
encoded = geobuf.encode(loadedJson)
print(encoded)