例外(Exceptions)

組み込み例外リファレンス

Scrapyに含まれるすべての例外とその使用法のリストを次に示します。

DropItem

exception scrapy.exceptions.DropItem

アイテムの処理を停止するためにアイテム・パイプライン・ステージによって発生させる必要がある例外。 詳細については アイテム・パイプライン を参照してください。

CloseSpider

exception scrapy.exceptions.CloseSpider(reason='cancelled')

この例外は、スパイダーのクローズまたは停止を要求するスパイダーコールバックから発生する可能性があります。サポートされている引数は以下です:

パラメータ

reason (str) -- クローズの理由

例えば:

def parse_page(self, response):
    if 'Bandwidth exceeded' in response.body:
        raise CloseSpider('bandwidth_exceeded')

DontCloseSpider

exception scrapy.exceptions.DontCloseSpider

この例外は、spider_idle シグナルハンドラーで発生させて、スパイダーが閉じないようにすることができます。

IgnoreRequest

exception scrapy.exceptions.IgnoreRequest

この例外は、スケジューラまたはダウンローダー・ミドルウェアによって発生し、要求を無視する必要があることを示します。

NotConfigured

exception scrapy.exceptions.NotConfigured

一部のコンポーネントは、この例外を発生させて、無効のままにすることを示すことができます。以下のコンポーネントが含まれます:

  • 拡張機能

  • アイテム・パイプライン

  • ダウンローダー・ミドルウェア

  • スパイダー・ミドルウェア

コンポーネントの __init__ メソッドで例外を発生させる必要があります。

NotSupported

exception scrapy.exceptions.NotSupported

この例外は、サポートされていない機能を示すために発生します。