asyncio(非同期I/O)

バージョン 2.0 で追加.

Scrapyは asyncio を部分的にサポートしています。 asyncioリアクターのインストール の後で、任意の コルーチンasyncio および asyncio を利用したライブラリを使用できます。

警告

Scrapyでの asyncio のサポートは実験的なものであり、実稼働環境ではまだ推奨されていません。 将来のScrapyバージョンでは、非推奨の期間や警告なしに関連する変更が導入される可能性があります。

asyncioリアクターのインストール

asyncio サポートを有効にするには、 TWISTED_REACTOR 設定を 'twisted.internet.asyncioreactor.AsyncioSelectorReactor' に設定します。

CrawlerRunner を使用している場合は、 AsyncioSelectorReactor リアクターも手動でインストールする必要があります。 install_reactor() を使用してこれを行うことができます:

install_reactor('twisted.internet.asyncioreactor.AsyncioSelectorReactor')

カスタムasyncioループの使用

asyncioリアクターでカスタムasyncioイベント・ループを使用することもできます。 ASYNCIO_EVENT_LOOP 設定を目的のイベント・ループ・クラスのインポート・パスに設定して、デフォルトのasyncioイベント・ループの代わりに使用します。