pip is configured with locations that require TLS/SSL, however the ssl module in Python is not avail

安装模块的时候,报错:

pip is configured with locations that require TLS/SSL, however the ssl
module in Python is not available. Collecting scrapy Retrying
(Retry(total=4, connect=None, read=None, redirect=None, status=None))
after connection broken by ‘SSLError(“Can’t connect to HTTPS URL
because the SSL module is not available.”)’: /simple/scrapy/
Retrying (Retry(total=3, connect=None, read=None, redirect=None,
status=None)) after connection broken by ‘SSLError(“Can’t connect to
HTTPS URL because the SSL module is not available.”)’: /simple/scrapy/
Retrying (Retry(total=2, connect=None, read=None, redirect=None,
status=None)) after connection broken by ‘SSLError(“Can’t connect to
HTTPS URL because the SSL module is not available.”)’: /simple/scrapy/
Retrying (Retry(total=1, connect=None, read=None, redirect=None,
status=None)) after connection broken by ‘SSLError(“Can’t connect to
HTTPS URL because the SSL module is not available.”)’: /simple/scrapy/
Retrying (Retry(total=0, connect=None, read=None, redirect=None,
status=None)) after connection broken by ‘SSLError(“Can’t connect to
HTTPS URL because the SSL module is not available.”)’: /simple/scrapy/
Could not fetch URL https://pypi.org/simple/scrapy/: There was a
problem confirming the ssl certificate:
HTTPSConnectionPool(host=‘pypi.org’, port=443): Max retries exceeded
with url: /simple/scrapy/ (Caused by SSLError(“Can’t connect to HTTPS
URL because the SSL module is not available.”)) - skipping Could not
find a version that satisfies the requirement scrapy (from versions: )
No matching distribution found for scrapy

原因是Python没有支持好TLS/SSL。
一种解决方法是跳过TLS/SSL。
在windows用户目录下新建pip/pip.ini(utf-8编码),使用国内镜像:

[global]
index-url=http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com

如果在windows下运行报错,

>>> import ssl
Traceback (most recent call last):
  File "", line 1, in <module>
  File "C:\ProgramData\Anaconda3\lib\ssl.py", line 101, in <module>
    import _ssl             # if we can't import it, let the error propagate
ImportError: DLL load failed: The operating system cannot run %1.

可以安装ish_parser

pip install ish_parser

其他国内镜像还有:
http://pypi.douban.com/simple/ 豆瓣
http://mirrors.aliyun.com/pypi/simple/ 阿里
http://pypi.hustunique.com/simple/ 华中理工大学
http://pypi.sdutlinux.org/simple/ 山东理工大学
http://pypi.mirrors.ustc.edu.cn/simple/ 中国科学技术大学
https://pypi.tuna.tsinghua.edu.cn/simple 清华

Centos下就是重新编译Openssl:

yum install openssl-devel -y 

参考:
https://github.com/pypa/virtualenv/issues/1139
https://github.com/LBNL-JCI-ICF/better/issues/6

你可能感兴趣的:(python)