【问题标题】:scrapy Import Error: scrapy.core.downloader.handlers.s3.S3DownloadHandlerscrapy 导入错误:scrapy.core.downloader.handlers.s3.S3DownloadHandler
【发布时间】:2014-05-07 22:07:07
【问题描述】:

我在我的 Windows 7 机器上安装了一个名为 scrapy 的虚拟环境中的 scrapy。 scrapy startproject 有效,我从 scrapy docs 制作了教程。

如果我跑了

scrapy crawl dmoz

我收到以下错误消息:

File "C:\Users\mac\pystuff\scrapy\lib\site-packages\scrapy\utils\misc.py", line 42,in load_object
raise ImportError("Error loading object '%s': %s" % (path, e))
ImportError: Error loading object'scrapy.core.downloader.handlers.s3.S3DownloadHandler': DLL load failed: Could not find the specified module.

测试:

python 控制台:

>>> import scrapy
>>> scrapy
>>> <module 'scrapy' from 'C:\Users\mac\pystuff\scrapy\lib\site-packages\scrapy\__init__.pyc'>

scrapy 可用

powershell:

PS C: python -m pydoc scrapy.core.downloader.handlers

输出:

NAME
scrapy.core.downloader.handlers - Download handlers for different schemes

FILE
c:\users\mac\pystuff\scrapy\lib\site-  packages\scrapy\core\downloader\handlers\__init__.py

PACKAGE CONTENTS
    file
    ftp
    http
    http10
    http11
    s3

CLASSES
    .
    .
    .

除 s3 之外的所有其他模块都显示正确的 pydoc。例如: python -m pydoc scrapy.core.downloader.handlers.file

只有 s3 给出导入错误:

PS C: python -m pydoc scrapy.core.downloader.handlers.s3
PS C: python -m pydoc scrapy.core.downloader.handlers.s3.S3DownloadHandler

输出:

problem in scrapy.core.downloader.handlers.s3 - <type 'exceptions.ImportError'>: DLL load failed: Could not find the specified module.

【问题讨论】:

    标签: python scrapy importerror


    【解决方案1】:

    pywin32 是问题包。我试图在 python 控制台中导入它,但找不到它。我将这 3 个包从 C:(yourpythonpath)\Lib\site-packages\pywin32_system32\ 复制到 C:(yourpythonpath)\Lib\site-packages\win32\

    1. pythoncom27.dll
    2. pythoncomloader27.dll
    3. pywintype.dll

    解决了问题!

    【讨论】:

      【解决方案2】:

      您可以从这里下载它作为安装: http://sourceforge.net/projects/pywin32/

      【讨论】:

        【解决方案3】:

        我遇到了同样的问题,经过一番研究,我尝试了几乎所有的建议,最终解决了这个问题。这是我的顺序:

        重新安装 OPENSSL

        重新安装pywin32 amd64

        重新安装 piwin32 32 位

        神奇地解决了这个问题。我的win服务器是64位的,但是安装32位的包解决了这个问题。我想这是因为我之前安装了一些其他的 32 位软件包并且没有意识到这一点。如果我有任何进展,我会及时通知你。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-10-06
          • 1970-01-01
          • 2015-10-08
          • 1970-01-01
          • 2020-04-23
          • 2015-10-10
          • 2013-07-28
          相关资源
          最近更新 更多