2016-03-10 4 views
1

Я учусь Scrapy, из документации Scrapy в http://doc.scrapy.org/en/1.0/intro/overview.html входе IPython: Ошибка при импорте OpenSSL

scrapy runspider stackoverflow_spider.py -o top-stackoverflow-questions.json

и CMD подскажет

ImportError: DLL load failed: %1 is not a valid Win32 application.

Деталь:

C:\Users\jiahao>scrapy runspider stackoverflow_spider.py -o top-stackoverflow-qu 
estions.json 
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 122, in execute 
    cmds = _get_commands_dict(settings, inproject) 
    File "c:\python27\lib\site-packages\scrapy\cmdline.py", line 46, in _get_comma 
nds_dict 
    cmds = _get_commands_from_module('scrapy.commands', inproject) 
    File "c:\python27\lib\site-packages\scrapy\cmdline.py", line 29, in _get_comma 
nds_from_module 
    for cmd in _iter_command_classes(module): 
    File "c:\python27\lib\site-packages\scrapy\cmdline.py", line 20, in _iter_comm 
and_classes 
    for module in walk_modules(module_name): 
    File "c:\python27\lib\site-packages\scrapy\utils\misc.py", line 71, in walk_mo 
dules 
    submod = import_module(fullpath) 
    File "c:\python27\lib\importlib\__init__.py", line 37, in import_module 
    __import__(name) 
    File "c:\python27\lib\site-packages\scrapy\commands\version.py", line 6, in <m 
odule> 
    import OpenSSL 
    File "c:\python27\lib\site-packages\OpenSSL\__init__.py", line 8, in <module> 
    from OpenSSL import rand, crypto, SSL 
    File "c:\python27\lib\site-packages\OpenSSL\rand.py", line 11, in <module> 
    from OpenSSL._util import (
    File "c:\python27\lib\site-packages\OpenSSL\_util.py", line 6, in <module> 
    from cryptography.hazmat.bindings.openssl.binding import Binding 
    File "c:\python27\lib\site-packages\cryptography\hazmat\bindings\openssl\bindi 
ng.py", line 14, in <module> 
    from cryptography.hazmat.bindings._openssl import ffi, lib 
ImportError: DLL load failed: %1 is not a valid Win32 application. 

ответ

0

Я имел та же проблема. Я загружаю и устанавливаю Win64OpenSSL_Light-1_0_2h, и это сработало.

+0

ОК, но я только что решил проблему сейчас. –

2

У меня тоже была эта проблема с OpenSSL в Windows, и в дополнение к предложению об установке предварительно упакованных файлов библиотеки из https://slproweb.com/products/Win32OpenSSL.html мне также понадобилось переустановить cryptography.

pip install -I cryptography

Смежные вопросы