在Python中使用Osmconvert

在Python中使用Osmconvert,python,python-2.7,openstreetmap,Python,Python 2.7,Openstreetmap,我想使用osmconvert来解析我感兴趣的区域的diff文件的大小,因为osmconvert比加载数据的osm2pgsql快得多 当我使用os.system调用命令时,如下所示: cmd = r"""c:\temp\osmconvert.exe 770.osc.gz -b=1,1,3,3 -o=extract.o5m""" os.system(cmd) 我收到osmconvert错误:无法打开文件 当我在Windows7的命令提示符下运行相同的命令时,它运行得很好。python是如何阻止该函

我想使用osmconvert来解析我感兴趣的区域的diff文件的大小,因为osmconvert比加载数据的osm2pgsql快得多

当我使用os.system调用命令时,如下所示:

cmd = r"""c:\temp\osmconvert.exe 770.osc.gz -b=1,1,3,3 -o=extract.o5m"""
os.system(cmd)
我收到osmconvert错误:无法打开文件

当我在Windows7的命令提示符下运行相同的命令时,它运行得很好。python是如何阻止该函数运行的?770.osc.gz文件与osmconvert.exe位于同一目录中,输出extract.05m应与osmconvert.exe位于同一目录中

如果我把命令放在一个批处理文件中,它可以工作,但是我想使用python从服务器下载该文件,这样我就可以自动更新数据库

多谢各位

770.osc.gz文件与osmconvert.exe位于同一目录中,输出extract.05m应与osmconvert.exe位于同一目录中

你的代码不是这么说的。代码显示从c:\temp\内部执行osmconvert.exe,但从当前工作目录读取770.osc.gz并写入extract.o5m

如果希望所有内容都在c:\temp\中运行,则在执行osmconvert之前必须更改此目录,或者必须预先设置传递给osmconvert的每个文件的路径

请尝试此呼叫:

cmd = r"""c:\temp\osmconvert.exe c:\temp\770.osc.gz -b=1,1,3,3 -o=c:\temp\extract.o5m"""

交叉柱:添加完整路径有效。我觉得自己很傻,因为我没有试着那样做。