在交互环境
import scrapy # 成功
但是在终端 scrapy 新建项目就出错了
Traceback (most recent call last):
File "/usr/local/bin/scrapy", line 7, in <module>
from scrapy.cmdline import execute
File "/usr/local/lib/python2.7/dist-packages/scrapy/cmdline.py", line 9, in <module>
from scrapy.crawler import CrawlerProcess
File "/usr/local/lib/python2.7/dist-packages/scrapy/crawler.py", line 15, in <module>
from scrapy.signalmanager import SignalManager
File "/usr/local/lib/python2.7/dist-packages/scrapy/signalmanager.py", line 2, in <module>
from pydispatch import dispatcher
ImportError: No module named pydispatch
可是, pydispatch包已经有了呀!
$ pip install --upgrade pydispatch
Requirement already up-to-date: pydispatch in /usr/local/lib/python2.7/dist-packages
Requirement already up-to-date: colorama>=0.2.7 in /usr/local/lib/python2.7/dist-packages (from pydispatch)
Requirement already up-to-date: six>=1.5.2 in /usr/local/lib/python2.7/dist-packages (from pydispatch)
環境設定に問題がありますか?
リーリー問題のあるコードにインストール パッケージがあるかどうかを確認します:
メソッドの取得元:
http://stackoverflow.com/questions/739993/how-can-i-get-a-list-of-locally-installed-python-modules
Scrapy のリリースノートを確認してみたところ、
つまり、scrapy の最新バージョンは pydispatch モジュールを使用せず、pydispatcher モジュールを使用します
最新のscrapy を使用していない可能性があります?
解決策として、virtualenv を使用することをお勧めします1 つの独立した Python 環境を構築するには、この環境に最新の Scrapy を再インストールします。
またはシステムに直接 Scrapy を再インストールします
pip install PyDispatcher