[python] probleme execution commande avec os.popen

lpi_info Messages postés 8 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 27 juin 2010 - 13 avril 2009 à 17:56
8sango8 Messages postés 7 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 2 février 2010 - 22 avril 2009 à 14:40
salut à tous,

j'essaie de lancer une commande dans un script python que je veux exécuter par la suite dans une page web, pour cela j'ai utilisée le spawn avec os.popen(), mais le problème que j'ai c'est qd j'exécute le script directement avec python tous marche bien, alors qu'en le lançant à partir du serveur j'ai le msg d'erreur suivant:

WindowsError: [Error 5] Accès refus: 'C:\\WINDOWS\\system32\\cmd.exe /c gdal_translate wcs.xml wcs.tif'

voici la partie de mon script ou je fais l'appel:

# la commande à executer
com = 'gdal_translate C:\Inetpub\wcs.xml C:\Inetpub\wcs.tif'
# spawn process:
child = os.popen(com)
child.close()

merci pour votre aide

Salwa.

4 réponses

8sango8 Messages postés 7 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 2 février 2010
21 avril 2009 à 10:38
Bonjour,
voila j'ai le plus ou moins le même problème . Je n'arrive pas à exécuter le gdal_translate a partir de mon script, je tape le code suivant :
"os.system("D:\Program Files\FWTools2.2.8\bin\gdal_translate.exe -ot UInt16 -scale  0 9000 0 255 -of png carteeee  popo22.png")

Cela ne fonctionne pas alors que quand je le fais directement dans la console tout fonctionne bien.
Tout aide est la bien venue .

Sango.
0
lpi_info Messages postés 8 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 27 juin 2010
21 avril 2009 à 12:16
Salut,

j'ai essayée une autre méthode en travaillant avec la spécification PyWPS, je lance ma commande gdal_tarnslate dans le processus  par:

self.cmd("gdal_translate -of png wcs.tif wcs_png.png")


et cela fonctionne bien, mais avec la commande: "gdal_translate C:\Inetpub\wcs.xml C:\Inetpub\wcs.tif" cela ne fonctionne plus, j'ai le message d'erreur suivant
----------
ERROR 4: Unable to open EPSG support file gcs.csv.
Try setting the GDAL_DATA environment variable to point to the
directory containing EPSG csv files.
ERROR 1: Unable to interprete GridBaseCRS 'urn:ogc:def:crs:EPSG::26191'.
GDALOpen failed - 1
Unable to interprete GridBaseCRS 'urn:ogc:def:crs:EPSG::26191'.
-------------
alors que j'ai déjà ajoutée la variable d'environnement GDAL_DATA

merci pour votre aide.

Salwa
0
8sango8 Messages postés 7 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 2 février 2010
22 avril 2009 à 10:09
Salut,

 moi j'ai un autre problème, la console se lance mais elle se coupe directement après et ma commande n'a pas été effectuer .

je rappel le code :

    os.system('D: &cd D:\Program Files\FWTools2.2.8\bin\ &gdal_translate.exe -ot UInt16 -scale  0 9000 0 255 -of png cart.png  popo88.png')

  Je test cette commande directement dans la console windows et la ça fonctionne directement donc le problème .

Merci pour votre aide .

Sango
0
8sango8 Messages postés 7 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 2 février 2010
22 avril 2009 à 14:40
J'ai trouvé je viens de remarquer que j'ai oublié le r' ............
donc ca deviens
    os.system(r'D: &cd D:\Program Files\FWTools2.2.8\bin\
&gdal_translate.exe -ot UInt16 -scale  0 9000 0 255 -of png
cart.png  popo88.png')
ca fonctionne !!
0
Rejoignez-nous