问题:
C:Users用户名>conda upgrade --all
Collecting package metadata: failed
CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-64/repodata.json>
Elapsed: -
An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.
SSLError(MaxRetryError('HTTPSConnectionPool(host='Tsinghua Open Source Mirror', port=443): Max retries exceeded with url: /anaconda/pkgs/free/win-64/repodata.json (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available."))'))
解决方案:
在 这个issue 得知, 需要安装 openSSL.
我跑 C:WINDOWSSystem32 里面一看, 果然没有任何 openssl 相关的东西.
看来是需要链接一个 openssl 的动态链接库, 而不是操作 Python 的 openssl 标准库.
在 https://slproweb.com/products/Win32OpenSSL.html 下载 OpenSSL 的 Windows 安装包.
对于 Win10 64bit 的, 应当选择 Win64 开头的版本, 例如本文撰写时最新的 Win64 OpenSSL v1.1.1a.
Win32 开头的版本是 32bit 系统使用的.
运行下载的 exe 或 msi 安装包, 发现协议里要求捐款, 不过也可以不管.
根据提示一路 "next", 当 "安装 DLL 到 System 目录" 的选项出现时, 勾选它. 这将会在 C:WINDOWSSystem32 目录中创建一个 openssl.dll 文件.
安装了 OpenSSL 之后, 弹出了请求捐款的选项, 取消选中的捐赠之后 finish, 否则会弹出一个支付网页.
安装 OpenSLL 之后, conda 的包更新下载就正常了。
来自大佬:Zombie110year