2

Pythonを使用してWebからファイルをダウンロードする方法を知っていますが、要求されているファイルが存在しない場合を処理したいと思います。その場合、エラーメッセージ(「404:ファイルが見つかりません」)を出力し、ディスクには何も書き込みません。ただし、プログラムの実行を継続できるようにしたい(つまり、存在する可能性のあるリスト内の他のファイルをダウンロードする)。

どうすればよいですか?以下は、URLを指定してファイルをダウンロードするためのテンプレートコードです(より良い方法があると思われる場合は、ファイルを自由に変更してください。ただし、簡潔でシンプルなものにしてください)。

import urllib
urllib.urlretrieve ("http://www.example.com/myfile.mp3", "myfile.mp3")
4

3 に答える 3

0
from urllib2 import URLError

try:
    # your file request code here
except URLError, e:
    if e.code == 404:
        # your appropriate code here
    else:
        # raise maybe?

例外の処理に関する特定のセクションがあるこのガイドに従いましたが、非常に役に立ちました。

于 2012-05-03T09:47:28.550 に答える
-1
import urllib, urllib2
try:
    urllib.urlretrieve ("http://www.example.com/", "myfile.mp3")
except URLError, e:
    if e.code == 404:
        print "4 0 4"
    else:
        print "%s" % e 

これはあなたのコードが行うことです。基本的には、www.example.comのWebページを取得して、myfile.mp3に書き込みます。myfile.mp3を検索しないため、例外に終わることはありません。基本的に、htmlで取得したすべてのものをmyfile.mp3に書き込みます。

Web上の特定の場所にファイルをダウンロードするためのコードを探している場合は、これを試してください

urllib2を使用してPythonでzipファイルをダウンロードするにはどうすればよいですか?

于 2012-07-13T01:20:24.150 に答える
-1

コードは次のようになります。

try:
    urllib.urlretrieve ("http://www.example.com/myfile.mp3", "myfile.mp3")
except URLError,e:
    if e.code==404:
        print 'file not found. moving on...'
        pass
于 2012-05-03T11:39:07.327 に答える