我在Yosemite上安装Scrapy时遇到了一些麻烦。我已经安装了所有依赖项,但是当我尝试运行scrapy时出现此错误。
$ scrapy crawl my_crawler
----------
File "/Library/Frameworks/Python.framework/Versions/3.4/bin/scrapy", line 5, in <module>
from pkg_resources import load_entry_point
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/pkg_resources.py", line 2697, in <module>
working_set.require(__requires__)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/pkg_resources.py", line 669, in require
needed = self.resolve(parse_requirements(requirements))
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/pkg_resources.py", line 572, in resolve
raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: cryptography>=0.2.1
我知道scrapy不支持3.4,但由于某种原因它试图使用它。有人有任何建议吗?
答案 0 :(得分:0)
我昨天在我的服务器上解决了这个问题,但是在中国网站上使用谷歌翻译找到了解决方案
pkg_resources.DistributionNotFound: cryptography>=0.2.1
此问题表明您在发行版中缺少名为libffi-dev的程序包。
请找到OSX的软件包并进行安装。使用easy_install实用程序为Python安装加密0.2.2软件包。
在完全满足依赖关系之后,你的scrapy应用程序应该可以运行。
Python通过将其报告为加密包的问题来掩盖真正的依赖性问题,而实际上它是OSX缺少的libffi-dev包。您可能明确需要libffi的DEV包。
祝你好运!我能够通过满足libffi依赖来解决这个问题。