运行scrapy教程示例时导入错误(scrapy crawl dmoz / scrapy.core.downloader.handlers.s3.S3DownloadHandler)

时间:2014-10-22 06:43:18

标签: python import scrapy

我正在运行scrapy教程中的示例。我正在运行Python 2.7.8。我使用pip下载Scrapy和其他必需的软件包。我相信我正确地遵循了教程,但我无法运行蜘蛛。我之前的帖子读过其他人有过的同样问题,但仍然无法解决问题。

我感谢任何帮助。

C:\tutorial>scrapy crawl dmoz
2014-10-22 02:14:56-0400 [scrapy] INFO: Scrapy 0.24.4 started (bot: tutorial)
2014-10-22 02:14:56-0400 [scrapy] INFO: Optional features available: ssl, http11
2014-10-22 02:14:56-0400 [scrapy] INFO: Overridden settings: {'NEWSPIDER_MODULE': 'tutorial.spiders'
, 'SPIDER_MODULES': ['tutorial.spiders'], 'BOT_NAME': 'tutorial'}
2014-10-22 02:14:58-0400 [scrapy] INFO: Enabled extensions: LogStats, TelnetConsole, CloseSpider, We
bService, CoreStats, SpiderState
Traceback (most recent call last):
  File "C:\Python27\lib\runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "C:\Python27\lib\runpy.py", line 72, in _run_code
    exec code in run_globals
  File "C:\Python27\Scripts\scrapy.exe\__main__.py", line 9, in <module>
  File "C:\Python27\lib\site-packages\scrapy\cmdline.py", line 143, in execute
    _run_print_help(parser, _run_command, cmd, args, opts)
  File "C:\Python27\lib\site-packages\scrapy\cmdline.py", line 89, in _run_print_help
    func(*a, **kw)
  File "C:\Python27\lib\site-packages\scrapy\cmdline.py", line 150, in _run_command
    cmd.run(args, opts)
  File "C:\Python27\lib\site-packages\scrapy\commands\crawl.py", line 60, in run
    self.crawler_process.start()
  File "C:\Python27\lib\site-packages\scrapy\crawler.py", line 92, in start
    if self.start_crawling():
  File "C:\Python27\lib\site-packages\scrapy\crawler.py", line 124, in start_crawling
    return self._start_crawler() is not None
  File "C:\Python27\lib\site-packages\scrapy\crawler.py", line 139, in _start_crawler
    crawler.configure()
  File "C:\Python27\lib\site-packages\scrapy\crawler.py", line 47, in configure
    self.engine = ExecutionEngine(self, self._spider_closed)
  File "C:\Python27\lib\site-packages\scrapy\core\engine.py", line 64, in __init__
    self.downloader = downloader_cls(crawler)
  File "C:\Python27\lib\site-packages\scrapy\core\downloader\__init__.py", line 73, in __init__
    self.handlers = DownloadHandlers(crawler)
  File "C:\Python27\lib\site-packages\scrapy\core\downloader\handlers\__init__.py", line 22, in __in
it__
    cls = load_object(clspath)
  File "C:\Python27\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': No module
named win32api

1 个答案:

答案 0 :(得分:1)

根据Scrapy文档,您假设在使用以下步骤安装Scrapy之前安装 OpenSSL : -

install OpenSSL by following these steps:
1. go to Win32 OpenSSL page
2. download Visual C++ 2008 redistributables for your Windows and architecture
3. download OpenSSL for your Windows and architecture (the regular version, not the light one)
4. add the c:\openssl-win32\bin (or similar) directory to your PATH, the same way you added python27 in the first step`` in the first step

请参阅此处的平台特定安装步骤。 Scrapy for windows