繁体   English   中英

为什么即使已经安装了 Scrapy 模块,python 也会抛出“ImportError: No module named linkextractor”?

[英]Why python throws an “ImportError: No module named linkextractor” even if the Scrapy module already installed?

我想安装portia 它需要scrapyslybot 我还安装了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

这里可能有什么问题? 我之前没有使用pipvirtualenv ,我上面描述的部署工作流程(例如 ENVIRONMENT 变量、其他virtualenv/pip配置)似乎有问题吗?

在 python3 linkextractor添加slinkextractor

代替 :

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM