windows操作系统
python版本是3.6.0
通过Anaconda命令conda install scrapy安装scrapy,安装过程中没有问题。
然后在命令行输入命令准备新建项目时,输入 scrapy startproject firstscrapy时出现了
from cryptography.hazmat.bindings._openssl import ffi, lib
ImportError: DLL load failed: 操作系统无法运行 %1。
上面的错误。通过百度查到了两种网友的解决方案:
1、用pip uninstall scrapy 和 conda remove scrapy 两次卸载掉scrapy,然后再重新安装
2、把c:/windows/system32 目录下的 ssleay32.dll和libeay32.dll两个文件删掉
之后再输入命令行准备新建项目时,输入scrapy startproject firstscrapy时出现了
from cryptography.hazmat.bindings._openssl im ImportError: DLL load failed: 找不到指定的程序问题
操作系统无法运行的问题确实解决了,但是openssl又找不到了
之后又重新去安装了openssl,
1)下载openssl程序并安装: https://slproweb.com/products/Win32OpenSSL.html 注意下载
Win64 OpenSSL v1.0.2j Light 版本就可以了,其它版本可能也会出现问题,反正官网上下载的试过下面的方法就不行;
2)将openssl安装路径下的bin文件夹内的ssleay32.dll和libeay32.dll两个文件复制到C:\system32文件夹下,覆盖原有的文件;
3)在系统的环境变量中增加openssl下bin文件夹路径,类似这样:C:\OpenSSL-Win64\bin。
但是问题依然没有解决:
输入conda list
发现openssl的版本依然是1.1.1
说明新安装的openssl并没有覆盖~~
之后打算将openssl删除,
conda remove openssl
但是删除不了~~~
输入conda install openssl重新安装也没有用
之后又继续去找方法
又有人说重新安装各种最新的版本包
conda create -n scrapyenv scrapy -c conda-forge
可以看到,他说下列的包将会被更新,但是实际情况是并没有更新
仍然停留在1.1.1
仍然报错:找不到指定程序
最后按照官网的
这个命令
输入后:
提示我openssl降级到1.0.2
可见之前的更新并没有用,还是在1.1.1
之后按y确定继续,并没有怎么抱希望的我,还是按照惯例的输入conda list
发现openssl竟然真的降级到了1.0.2
再创建一个新的项目
scrapy startproject tutorial
果不其然,成功了
饶了这么多的弯路,真的是~~~
之后又重新将scrapy删除,验证一下这方法是否真的可行
pip uninstall scrapy
conda remove scrapy
再conda install -c conda-forge scrapy安装
scrapy startproject tutoria
水到渠成~~~~~~~