Universal Feed Parserを使用して、DjangoWebサイトの外部フィードからコンテンツを取得しようとしています。たとえば、ユーザーがフィードではないURLを指定した場合など、ユーザーエラー処理が必要です。feedparserが誤った入力にどのように応答するかを試したところ、feedparserが例外をまったくスローしないことに驚きました。たとえば、HTMLコンテンツでは、HTMLコードからいくつかの情報を解析しようとし、存在しないドメインでは、ほとんど空の辞書を返します。
{'bozo': 1,
'bozo_exception': URLError(gaierror(-2, 'Name or service not known'),),
'encoding': 'utf-8',
'entries': [],
'feed': {},
'version': None}
その他の誤った入力は、返されたディクショナリのstatus_code
またはの値に現れます。namespaces
それで、無限のカスケードに頼ることなく、正気のエラーチェックを行うための最良のアプローチはif .. elif .. elif ...
何ですか?