Os.popenがsubprocess.popenに置き換えられているため、どのように変換するのか疑問に思っていました
os.popen('swfdump /tmp/filename.swf/ -d')
subprocess.popen()へ
私は試した:
subprocess.Popen("swfdump /tmp/filename.swf -d")
subprocess.Popen("swfdump %s -d" % (filename)) # NOTE: filename is a variable
# containing /tmp/filename.swf
しかし、私はこれを適切に記述していないと思います。任意の助けをいただければ幸いです。ありがとう
subprocess.Popen
は引数のリストを取ります:
from subprocess import Popen, PIPE
process = Popen(['swfdump', '/tmp/filename.swf', '-d'], stdout=PIPE, stderr=PIPE)
stdout, stderr = process.communicate()
ユーザーがos.popen
からsubprocess
に移行するのを支援することに専念する ドキュメントのセクション もあります。
sh を使用すると、物事がずっと簡単になります。
import sh
print sh.swfdump("/tmp/filename.swf", "-d")