Scrapyをインストールして動かす際に少してこずった部分があったため共有しておきます。
環境
dockerコンテナ内で実行。
python-alpineを使用。
Scrapy 14.0
問題
実行する際に、以下のようなエラーが出る。
ImportError: cannot import name 'HTTPClientFactory’
くわしく見てみると、Scrapyはtwistedという非同期処理ライブラリを使用しているらしい。
その中のインポートでエラーが発生している。該当箇所のドキュメントを見てみる。
調べてみると、最新バージョンではHTTPCilentFactory クラスは消えていますね。
旧バージョンには存在しているためそちらを使います。
解決策
pipで古いバージョンのtwistedを入れる。
自分は16で動きました。