0
私はAPIからの応答をプリントアウトするスクリプトを持っていますが、何も例外を捕まえることはできません。私はこの話題に尋ねられたすべての質問を幸運なしに行ったと思います。canllがurllib2でexeptionsをキャッチ
スクリプトでエラー/例外が検出されるかどうかを確認するにはどうすればよいですか?
私は知っているサイトでスクリプトをテストしています403禁止されていますが、表示されません。
マイスクリプト:
import urllib2
url_se = 'http://www.example.com'
opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'API to File')]
try:
request = opener.open(url_se)
except urllib2.HTTPError, e:
print e.code
except urllib2.URLError, e:
print e.args
except Exception:
import traceback
print 'Generic exception ' + traceback.format_exc()
response = request.read()
print response
は、これは正しいアプローチですか? exeptionsに関するベストプラクティスは何ですか?
urllib2
Hm。何らかの理由で、私がテストしているサイトでは、スクリプト内に多くの情報が表示されていますが、ブラウザでは禁止されています。とにかく、2番目の質問は、これは正しいアプローチ/良い練習ですか?私はより多くの例外を捕まえるべきですか? –
@TheDude例外をキャッチする主な理由は、好ましくない状況がコードを壊すのを止めることです。これは従うのが良い習慣ですが、それらの例外に関して特定のことをしていないので、個々の例外を個々にキャッチするのは意味がありません。 –