2016-11-05 4 views
0

저는 Scrapy를 처음 접했고 파이썬에 대한 기본적인 지식 만 가지고 있습니다.
Scrapy 자습서를 실행할 때 오류가 발생합니다.
내가 설치 페이지에 따라 지금까지치료 튜토리얼 왜곡 된 오류

  • 이어 조치를 취 및 가상 환경을 설정 한 윈도우 7 OS, 64 비트 및 2.7.12이
    단계 설치 32 비트 파이썬이 'scrapy '
  • 는 가상 환경을 활성화
  • 튜토리얼 페이지
  • 에 따라 단계를 실행 (모든 종속성을 pywin 포함, 잘 설치 한 것 같습니다 너무, 32 비트 버전)
  • 설치된 scrapy scrapy의 \ 스크립트부터 tutorial page
  • 에 주어진 코드, 파일 quotes_spider.py 만들어 scrapy startproject tutorial

  • \ 내가 scrapy crawl quotes를 실행하고이 오류 매우 유사 다음과 같은 오류

    (scrapy) F:\My Projects\scrapy\Scripts\tutorial>scrapy crawl quotes 
    2016-11-05 14:21:59 [scrapy] INFO: Scrapy 1.2.1 started (bot: tutorial) 
    2016-11-05 14:21:59 [scrapy] INFO: Overridden settings:         {'NEWSPIDER_MODULE': 'tutorial.spiders', 'SPIDER_MODULES': ['tutorial.spiders'],   'ROBOTSTXT_OBEY': True, 'BOT_NAME': 'tutorial'} 
    2016-11-05 14:21:59 [scrapy] INFO: Enabled   extensions:'scrapy.extensions.logstats.LogStats','scrapy.extensions.telnet.Telne  tConsole', 'scrapy.extensions.corestats.CoreStats'] Unhandled error in Deferred: 
    2016-11-05 14:21:59 [twisted] CRITICAL: Unhandled error in Deferred: 
    2016-11-05 14:21:59 [twisted] CRITICAL: 
    Traceback (most recent call last): 
    File "f:\myproj~1\scrapy\lib\site-packages\twisted\internet\defer.py",   line 12 60, in _inlineCallbacks result = g.send(result) 
    File "f:\myproj~1\scrapy\lib\site-packages\scrapy\crawler.py", line 90,   in crawl six.reraise(*exc_info) 
    File "f:\myproj~1\scrapy\lib\site-packages\scrapy\crawler.py", line 72,   in crawl self.engine = self._create_engine() 
    File "f:\myproj~1\scrapy\lib\site-packages\scrapy\crawler.py", line 97,   in _create_engine return ExecutionEngine(self, lambda _: self.stop()) 
    File "f:\myproj~1\scrapy\lib\site-packages\scrapy\core\engine.py", line   68, in __init__ self.downloader = downloader_cls(crawler) 
    File "f:\myproj~1\scrapy\lib\site-  packages\scrapy\core\downloader\__init__.py" 
    , line 88, in __init__ self.middleware =   DownloaderMiddlewareManager.from_crawler(crawler) 
    File "f:\myproj~1\scrapy\lib\site-packages\scrapy\middleware.py", line     58, in from_crawler return cls.from_settings(crawler.settings, crawler) 
    File "f:\myproj~1\scrapy\lib\site-packages\scrapy\middleware.py", line   34, in from_settings mwcls = load_object(clspath) 
    File "f:\myproj~1\scrapy\lib\site-packages\scrapy\utils\misc.py", line   44, in load_object mod = import_module(module) 
    File "c:\python27\Lib\importlib\__init__.py", line 37, in   import_module__import__(name) 
    File "f:\myproj~1\scrapy\lib\site-  packages\scrapy\downloadermiddlewares\retry.py", line 23, in <module> from   scrapy.xlib.tx import ResponseFailed 
    File "f:\myproj~1\scrapy\lib\site-packages\scrapy\xlib\tx\__init__.py",   line 3, in <module> from twisted.web import client 
    File "f:\myproj~1\scrapy\lib\site-packages\twisted\web\client.py", line   42, in <module> from twisted.internet.endpoints import TCP4ClientEndpoint,   SSL4ClientEndpoint 
    File "f:\myproj~1\scrapy\lib\site-packages\twisted\internet\endpoints.py", line 36, in <module> from   twisted.internet.stdio import StandardIO, PipeAddress 
    File "f:\myproj~1\scrapy\lib\site-packages\twisted\internet\stdio.py",   line 30, in <module> from twisted.internet import _win32stdio 
    File "f:\myproj~1\scrapy\lib\site-  packages\twisted\internet\_win32stdio.py", line 9, in <module> import win32api 
    ImportError: No module named win32api 
    

있어 자습서 여기서 here을 논의했지만 제안 된 솔루션이 제대로 작동하지 않는 것 같습니다. Pywin은 내 글로벌 환경 C : Python27 \ Lib \ site-packages에 설치되어 있지만 가상 환경에는 표시되지 않습니다. 나는 pywin 실행 파일이 C 하에서 설치를 허용하는 것만 큼 내 가상 env에 설치하는 방법을 모르겠다. 미리 도움을 청하십시오! 가상 ENV에

내 핍 목록
바인드합니다입니다 == 16.2.0
cffi의 == 1.8.3
끊임없이 15.1.0
암호화 ==에게 1.5.2
cssselect 1.0 ==를 ==. 0
enum34의 == 1.1.6
IDNA == 2.1
증분 == 16.10.1
IPADDRESS == 1.0.17
LXML의 == 3.6.4
parsel의 == 1.0.3
01,235 16,pyasn1의 == 0.1.9
pyasn1-모듈 == 0.0.8
pycparser == 2.17
PyDispatcher의 == 2.0.5
pyOpenSSL == 16.2.0
queuelib == 1.4.2
Scrapy == 1.2.1
서비스 신원 == 16.0.0
여섯 == 1.10.0
트위스트 == 16.5.0
w3lib의 == 1.15.0
zope.interface의 == 4.3.2

답변

2

는 win32api 누락있는 것처럼, 단순히 주사위를 통해 설치 같다 :

pip install pypiwin32 
+0

이봐 난 소스 포지에서 다운로드 (pypiwin32를 통해 설치) win32api 및 pywin32은 본질적으로 같은 일이 있는지 어떤 생각? 그래서 나는 더 이상 오류가 없을 것입니다? pywin32가 Scrapy 설치 페이지에서 필수적으로 언급 되었기 때문에 묻습니다. 당신의 도움을 주셔서 감사합니다! –

+0

@CraigDsouza 그래, 그건 본질적으로 같은거야. 'pypiwin32'는'pip' (PYthon Package Index)에서 호출하는 방법이며'pip' 패키지 관리 시스템을 사용하여 다운로드하고 빌드 할 수 있습니다. – Granitosaurus