Os.popen étant remplacé par subprocess.popen, je me demandais comment je convertirais
os.popen('swfdump /tmp/filename.swf/ -d')
to subprocess.popen ()
J'ai essayé:
subprocess.Popen("swfdump /tmp/filename.swf -d")
subprocess.Popen("swfdump %s -d" % (filename)) # NOTE: filename is a variable
# containing /tmp/filename.swf
Mais je suppose que je n'écris pas correctement ceci. Toute aide serait appréciée. Merci
subprocess.Popen
prend une liste d'arguments:
from subprocess import Popen, PIPE
process = Popen(['swfdump', '/tmp/filename.swf', '-d'], stdout=PIPE, stderr=PIPE)
stdout, stderr = process.communicate()
Il y a même une section de la documentation consacrée à aider les utilisateurs à migrer de os.popen
à subprocess
.
Utilisez sh , cela facilitera beaucoup les choses:
import sh
print sh.swfdump("/tmp/filename.swf", "-d")