2017-09-22 5 views
0

私はcurlを使って画像をダウンロードしようとしています。私は次のコマンドを試しています:pythonでcurlを使ってコンテンツをファイルにリダイレクトする方法は?

subprocess.call(['curl',adress,'>',savename]) 

コンテンツをダウンロードしてファイル名にリダイレクトするためです。これで、私は、コマンドラインコマンドに

curl http://my_adress/whatever > test.jpg 

を模倣しようとするしかし、私はそれを右にする方法

Could not resolve host: > 

言ってちんぷんかんぷん出力(画像の内容)とエラーが出ますか?

+1

多分もっと読む:https://docs.python.org/2/howto/urllib2.html –

+1

個々の引数(文字列ではなく)として 'subprocess'にコマンドを与えるのが正しい方法です。それは、リダイレクトのようなシェル機能の使用(偶発的または悪意のある)を防ぐためです。 –

答えて

3
subprocess.check_call(['curl', address], stdout=open(savename, 'w')) 

savenameには画像が表示されます。

+2

慎重に扱うには 'open(savename、 'wb')をf:...'とする必要がありますが、 'b'は子プロセスに大きな差をつけることはできません。 –

関連する問題