python - 将 Conda 更新到 4.6.1 以集成 PowerShell 后,Conda 无法安装 Conda-forge 包
问题描述
最新版本的 Conda (4.6.1) 断言添加了初始化支持,尤其是对 PowerShell 的引用。可以在这个官方更新发布文档中看到
我在这里详细介绍了更新和初始化过程(因为我在编码会话期间遇到了 Microsoft/PowerShell 需要 Set-ExecutionPolicy remoteSigned 的问题)。
我可以设置它并将其与 Visual Studio Code 集成,但是我现在遇到了一个问题,即我无法将来自 Conda-forge 的包安装到我的任何 conda 环境中。
下面是我得到的错误的输出:
(p3environ_test) C:\Users\User\Miniconda3\envs\p3environ_test>conda install -c conda-forge numpy
Collecting package metadata: failed
CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://repo.anaconda.com/pkgs/main/win-64/repodata.json.bz2>
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.
If your current network has https://www.anaconda.com blocked, please file
a support request with your network engineering team.
SSLError(MaxRetryError('HTTPSConnectionPool(host=\'repo.anaconda.com\', port=443): Max retries exceeded with url: /pkgs/main/win-64/repodata.json.bz2 (Caused by SSLError("Can\'t connect to HTTPS URL because the SSL module is not available."))'))
虽然这似乎是一次性事件,但我也遇到了一个简单的尝试创建 python 3 环境的问题,其中错误输出如下:
Collecting package metadata: done
Solving environment: failed
PackagesNotFoundError: The following packages are not available from current channels:
- python-3.6
Current channels:
- https://repo.anaconda.com/pkgs/main/win-64
- https://repo.anaconda.com/pkgs/main/noarch
- https://repo.anaconda.com/pkgs/free/win-64
- https://repo.anaconda.com/pkgs/free/noarch
- https://repo.anaconda.com/pkgs/r/win-64
- https://repo.anaconda.com/pkgs/r/noarch
- https://repo.anaconda.com/pkgs/msys2/win-64
- https://repo.anaconda.com/pkgs/msys2/noarch
To search for alternate channels that may provide the conda package you're
looking for, navigate to
https://anaconda.org
and use the search bar at the top of the page.
我猜测最新版本的 Conda (V.4.6.1) 有一个错误,或者它是一个 Conda-forge 频道问题(也许他们没有考虑这里的更新?)?
我重新加载了之前版本的 Conda (4.5),并且在创建环境或安装 conda-forge 包方面没有问题。
在之前的升级过程中,这里有人注意到了类似的事件,我想知道这是否是频道的问题。在链接中,特别注意添加频道。正如您可能猜到的那样,我是一个 conda 新手(或者至少缺乏熟练度),所以不知道如何手动调整频道或者我是否应该(这是否会在以后给我带来新的问题康达更新?)康达锻造过去只是为我工作,没有任何渠道调整。
任何帮助将不胜感激。
谢谢。
解决方案
TL;DR:我通过安装OpenSSL解决了我的类似问题。具体来说,我下载了 1.1.1a 版本,64 位 ( Win64OpenSSL-1_1_1a.exe
) 并使用默认安装参数安装它,即我选择将 OpenSSL DLL 复制到“Windows 系统目录”。
更多细节:
- 我对 Anaconda3的全新安装(!)也有类似的头痛。就我而言,在(conda 的)虚拟环境中,我
conda install
什么也做不了,并且不断收到与您类似的 SSL 错误。 - 有几个人推荐
conda config --set ssl_verify False
,但这听起来像是一个可怕而危险的黑客(+有人说这会导致安装某些软件包出现问题)。 - 其他人推荐,
set REQUESTS_CA_BUNDLE=path\to\anaconda3\Lib\site-packages\certifi\cacert.pem
但它对我不起作用。(我也尝试将它设置为环境变量,也没有工作) - 总而言之,安装 OpenSSL(见上文)为我解决了这个问题。
额外提示,可能与类似问题有关:
- Anaconda Prompt 中的某些事情更容易(与普通的命令提示符相反)。
- 如果您刚刚安装了新的 Anaconda,请帮自己一个忙并重新启动您的 Windows,即使安装后不需要您这样做。
推荐阅读
- ios - UIWebView swift中的自定义视图
- drupal-7 - Drupal Services Plugin ignoring multi-value fields
- forms - Powerapps - 在开始时将变量设置为 SharePoint 用户列
- iis - 将 DataProtectionProvider 配置为适用于 IIS、IIS Express 和应用程序的自托管实例
- c++ - 我可以用三进制初始化 char[] 吗?
- android - Cordova - 由于联系权限,Android 应用程序在启动时崩溃
- sql - SSRS关于参数中的多个值的问题
- android - 删除谷歌地图中的所有折线
- html - URL linking to collapsible element's child link?
- python - How to change colorbar using Matplotlib?