subprocess.call() からのプロセス出力の取得
2.7 より前の Python バージョンでは、subprocess を使用して呼び出されたプロセスから出力を取得します。 call() は難しい場合があります。 StringIO.StringIO オブジェクトを stdout 引数に渡すと、StringIO オブジェクトに 'fileno' 属性がないため、エラーが発生します。
解決策
Python バージョン 2.7 の場合上記では、subprocess.check_output 関数が簡単な解決策を提供します。サブプロセスの実行と、その標準出力を文字列としてキャプチャして返すことを組み合わせます。
例 (Linux でテスト済み):
import subprocess output = subprocess.check_output(['ping', '-c', '1', '8.8.8.8']) print(output)
ping コマンドはLinux 表記 (カウントの -c)。 Windows の場合は、-n に変更します。
詳細については、この [他の投稿](https://stackoverflow.com/a/5647266/6214952) のより包括的な回答を参照してください。
以上がPython で「subprocess.call()」からプロセス出力を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。