org - ¿Cuál es la mejor manera en Python 2.3 para que Windows ejecute un programa como ghostscript con múltiples argumentos y espacios en las rutas?
python 64 bits (1)
Use subproceso , superpone os.popen, aunque no es mucho más una abstracción:
from subprocess import Popen, PIPE
output = Popen(["mycmd", "myarg"], stdout=PIPE).communicate()[0]
#this is how I''d mangle the arguments together
output = Popen([
self._ghostscriptPath,
''gswin32c'',
''-q'',
''-dNOPAUSE'',
''-dBATCH'',
''-sDEVICE=tiffg4'',
''-r196X204'',
''-sPAPERSIZE=a4'',
''-sOutputFile="%s %s"'' % (tifDest, pdfSource),
], stdout=PIPE).communicate()[0]
Si solo tiene Python 2.3 que no tiene un módulo de subproceso, puede usar os.popen
os.popen('' ''.join([
self._ghostscriptPath,
''gswin32c'',
''-q'',
''-dNOPAUSE'',
''-dBATCH'',
''-sDEVICE=tiffg4'',
''-r196X204'',
''-sPAPERSIZE=a4'',
''-sOutputFile="%s %s"'' % (tifDest, pdfSource),
]))
Sin duda, hay algún tipo de abstracción que permite esto?
Este es esencialmente el comando
cmd = self._ghostscriptPath + ''gswin32c -q -dNOPAUSE -dBATCH -sDEVICE = tiffg4 -r196X204 -sPAPERSIZE = a4 -sOutputFile = "'' + tifDest +" "+ pdfSource + ''"''
os.popen (cmd)
me parece muy sucio, debe haber alguna forma pitonica