[postgis-users] Calling pgsql2shp.exe via python

Stefan Keller sfkeller at gmail.com
Mon Feb 20 15:24:07 PST 2012


Yes; it's most probably a quoting problem: See e.g.
http://stackoverflow.com/questions/204017/how-do-i-execute-a-program-from-python-os-system-fails-due-to-spaces-in-path

-Stefan

2012/2/21 Horst Düster <horst.duester at kappasys.ch>:
> Be careful with the double quotes
>
> Dr. Horst Düster
> Kappasys
> Alte Bernstrasse 13
> CH-4500 Solothurn
>
> Tel.: +41 (0) 32 514 00 40
> Mobil: +41 (0) 76 408 51 06
> eMail: horst.duester at kappasys.ch
> skype: horstduester
> Twitter: moazagotl
> Web: www.kappasys.ch
>
> lat: N 47° 12' 06.408" lon: E 7° 32' 13.740"
>
> Am 21.02.2012 00:11, schrieb David Quinn:
>
>> Stefan
>> Yes - It's just one line in my python file and I double-checked my quotes.
>> -David
>>
>> On Mon, Feb 20, 2012 at 6:04 PM, Stefan Keller<sfkeller at gmail.com>  wrote:
>>
>>> David
>>>
>>> Just to be sure: You did make one single line without line breaks from
>>> the
>>> mail?
>>>
>>> os.system('start "C:\Program Files
>>> (x86)\PostgreSQL\9.1\bin\pgsql2shp.exe" -f D:\testShapefile.shp -h
>>> localhost -u postgres -p 5432 test_db "SELECT * FROM
>>> myschema.testquery"')
>>>
>>> -Stefan
>>>
>>> 2012/2/20 David Quinn<daithiquinn at gmail.com>:
>>>>
>>>> I did try that and got the following error message:
>>>>
>>>> "Windows cannot find '-f'. Make sure that you typed the name correctly,
>>>
>>> and
>>>>
>>>> then try again."
>>>>
>>>>
>>>> On Mon, Feb 20, 2012 at 5:49 PM, Paul Ramsey<pramsey at opengeo.org>
>>>
>>> wrote:
>>>>>
>>>>>
>>>>> Your quotes are misplaced, try
>>>>>
>>>>> os.system('start "C:\Program Files
>>>
>>> (x86)\PostgreSQL\9.1\bin\pgsql2shp.exe"
>>>>>
>>>>> -f
>>>>> D:\testShapefile.shp -h localhost -u postgres -p 5432 test_db "SELECT *
>>>>> FROM
>>>>> myschema.testquery"')
>>>>>
>>>>>
>>>>> On Mon, Feb 20, 2012 at 2:24 PM, David Quinn<daithiquinn at gmail.com>
>>>>> wrote:
>>>>>>
>>>>>> I'm trying to call the pgsql2shp.exe function using python, as I would
>>>>>> like
>>>>>> to be able to loop through some tables. What I've tried doing is the
>>>>>> following:
>>>>>>
>>>>>> import os
>>>>>> os.system('start "C:\Program Files
>>>>>> (x86)\PostgreSQL\9.1\bin\pgsql2shp.exe -f
>>>>>> D:\testShapefile.shp -h localhost -u postgres -p 5432 test_db "SELECT
>>>
>>> *
>>>>>>
>>>>>> FROM
>>>>>> myschema.testquery""')
>>>>>>
>>>>>> When I paste the line:
>>>>>>
>>>>>> C:\Program Files (x86)\PostgreSQL\9.1\bin\pgsql2shp.exe -f
>>>>>> D:\testShapefile.shp -h localhost -u postgres -p 5432 test_db "SELECT
>>>
>>> *
>>>>>>
>>>>>> FROM
>>>>>> myschema.testquery"
>>>>>>
>>>>>> it produces a shapefile without a problem. However, my python script
>>>>>> flashes
>>>>>> open a CMD terminal, but it disappears before I see what is happening
>>>>>> and
>>>>>> does not produce any output. I'm using PostGIS 2.0, Windows 7, and
>>>>>> Python
>>>>>> 2.6.5.
>>>>>> If there is an alternative approach to python for this, I will happily
>>>>>> try
>>>>>> it out.
>>>>>>
>>>>>> (I hope this question is not too off-topic!)
>>>>>>
>>>>>> Thanks,
>>>>>> David
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> postgis-users mailing list
>>>>>> postgis-users at postgis.refractions.net
>>>>>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>>>>>>
>>>>> _______________________________________________
>>>>> postgis-users mailing list
>>>>> postgis-users at postgis.refractions.net
>>>>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> postgis-users mailing list
>>>> postgis-users at postgis.refractions.net
>>>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>>>>
>>> _______________________________________________
>>> postgis-users mailing list
>>> postgis-users at postgis.refractions.net
>>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>>>
>>
>>
>>
>> _______________________________________________
>> postgis-users mailing list
>> postgis-users at postgis.refractions.net
>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users



More information about the postgis-users mailing list