![](/img/trans.png)
[英]ImportError: No module named Scrapy; even if Scrapy was successfully installed
[英]Why python throws an “ImportError: No module named linkextractor” even if the Scrapy module already installed?
我想安装portia 。 它需要scrapy
和slybot
。 我还安装了virtualenv
(按照推荐)并执行了virtualenv Portia
来为这个项目创建一个 python 虚拟环境。 现在它需要使用twistd -n slyd
启动twisted
服务器,但随后会引发错误:
File "/home/john/Downloads/portia-master/slybot/slybot/linkextractor/__init__.py", line 6, in <module>
from .base import BaseLinkExtractor, ALLOWED_SCHEMES File "/home/john/Downloads/portia-master/slybot/slybot/linkextractor/base.py", line 6, in <module>
from scrapy.linkextractor import IGNORED_EXTENSIONS ImportError: No module named linkextractor
我安装了 Ubuntu 12.04: python 2.7, pip, python-scrapy, python-twisted
这里可能有什么问题? 我之前没有使用pip
和virtualenv
,我上面描述的部署工作流程(例如 ENVIRONMENT 变量、其他virtualenv/pip
配置)似乎有问题吗?
在 python3 linkextractor
添加s
到linkextractor
。
代替 :
from scrapy.linkextractor import LinkExtractor
到 :
from scrapy.linkextractors import LinkExtractor
^
并享受它。
有关更多信息,请阅读 此处的 Scrapy 文档。
它错过了中间部分; contrib
,其中linkextractor
是一个子模块。
它应该是:
scrapy.contrib.linkextractor
^^^^^^^
好吧,我认为你应该在 github scrapinhub repo 中看到这个问题( https://github.com/scrapinghub/portia/issues/13 )。
我通过在我的系统中而不是在 virtualenv 中安装库的导入解决了一些错误。
在我的例子中,库是 jsonschema ( pip install jsonschema
) 和 slybot ( pip install -e slybot
),在我运行 requirements.txt 之后。
此致!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.