Linux Python Scrapy没有名为six.moves的模块

时间:2017-12-18 17:51:14

标签: python linux python-2.7 scrapy six

我们想在linux机器上使用scrapy。我们使用python 2.7版本并安装scrapy 1.4.0(pip install scrapy)。我们将导入scrapy添加到.py文件中。当我们运行.py文件时,给出如下错误:

File "mapper.py", line 5, in <module>
    import scrapy
  File "/usr/local/lib/python2.7/dist-packages/scrapy/__init__.py", line 27, in <module>
    from . import _monkeypatches
  File "/usr/local/lib/python2.7/dist-packages/scrapy/_monkeypatches.py", line 2, in <module>
    from six.moves import copyreg
ImportError: No module named **six.moves**

我们搜索了这个问题,但无法得到任何答案。我们如何解决这个问题?谢谢。

2 个答案:

答案 0 :(得分:0)

最后我们找到了如下答案:

import os, imp
def load_src(name, fpath):
    import os, imp
    return imp.load_source(name, os.path.join(os.path.dirname(__file__), fpath))
load_src("six", "./six.py")

我们从自己的路径导入six.py然后最终可以使用它。实际上这是一个解决方案,我认为linux服务器中python环境的主要问题。但在这种情况下,我们无法访问linux机器和许多安装的python版本,因此python自己的库six.py无法找到。所以我们使用这个解决方案并且它有效。

答案 1 :(得分:0)

如果尚未安装,请安装六个模块。

安装cmd:pip install six 然后使用以下方法导入:import six

我遇到了同样的错误,我的问题得到了解决。