Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 安装Scrapy的包依赖项_Python_Windows_Python 2.7_Scrapy_Pyopenssl - Fatal编程技术网

Python 安装Scrapy的包依赖项

Python 安装Scrapy的包依赖项,python,windows,python-2.7,scrapy,pyopenssl,Python,Windows,Python 2.7,Scrapy,Pyopenssl,因此,在用户需要为Scrapy安装的众多软件包中,我认为我在使用pyOpenSSL时遇到了问题 当我尝试创建一个教程Scrapy项目时,我得到以下输出: 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

因此,在用户需要为Scrapy安装的众多软件包中,我认为我在使用pyOpenSSL时遇到了问题

当我尝试创建一个教程Scrapy项目时,我得到以下输出:

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\lib\site-packages\scrapy\cmdline.py", line 168, in <module>
    execute()
  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 68, 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\bench.py", line 3, in <mod
ule>
    from scrapy.tests.mockserver import MockServer
  File "C:\Python27\lib\site-packages\scrapy\tests\mockserver.py", line 6, in <m
odule>
    from twisted.internet import reactor, defer, ssl
  File "C:\Python27\lib\site-packages\twisted\internet\ssl.py", line 59, in <mod
ule>
    from OpenSSL import SSL
  File "build\bdist.win32\egg\OpenSSL\__init__.py", line 8, in <module>
  File "build\bdist.win32\egg\OpenSSL\rand.py", line 11, in <module>
  File "build\bdist.win32\egg\OpenSSL\_util.py", line 3, in <module>
ImportError: No module named cryptography.hazmat.bindings.openssl.binding

因此,我有点不知所措,不知道如何才能让Scrapy正常启动和运行

我强烈建议使用
conda
而不是
pip
,尤其是在使用Windows时。 在许多其他事情中,它将为您的系统获取适当的二进制文件。它使建立一个科学的python环境(想想Scipy、Numpy、Pandas……)变得轻而易举

因此,请阅读、安装,然后执行以下操作:

conda create -n scrapyenv python=2  # creates a new py2 environment
activate scrapyenv                  # switch to the new environment
conda install scrapy                # install scrapy
只有当您希望将其封装在单独的环境中时,才需要执行步骤1和步骤2。顺便说一句,如果你安装anaconda,你会安装一整套有用的软件包


另外,如果
conda
不包括
pyOpenSSL
或者您不想安装
anaconda
,请查看本教程的第9点。

我在Mac OS上遇到了相同的错误

我用openssl 0.13而不是最新版本解决了这个问题

easy_install pyOpenSSL==0.13


我遇到了同样的问题,并试图用第一个答案来解决它,但它不起作用。 最后,我删除了pyOpenSSL并下载了pyOpenSSL,setup。问题解决了。 pyopenssl的url为:

在尝试安装
Scrapy
之前,您应该升级
pip

pip install --upgrade pip
pip install Scrapy 

我已经安装了Python 32位以及pyopenssl 32位。不知道还有什么可能是错误的64位…我有同样的依赖性问题,并重新安装了康达而不是pip解决了,谢谢你的工作了。。这是2015年,在历史上,更多的人完成了大部分事情,却不知道为什么它会起作用……使用pip对我来说很有效,但不需要指定版本
pip install pyOpenSSL==0.13
pip install --upgrade pip
pip install Scrapy