在运行中途Conda Update --all,更新停滞不前.多个包已更新.现在,当我跑步conda update --all或者conda update conda,我得到这个回应:
(C:\Users\*****\AppData\Local\Continuum\Anaconda3) C:\Users\*****>conda update conda
Fetching package metadata ...
CondaHTTPError: HTTP None None for url <None>
Elapsed: None
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(SSLError(SSLError("bad handshake: Error([('SSL routines', 'ssl3_get_server_certificate', 'certificate verify failed')],)",),),)
Run Code Online (Sandbox Code Playgroud)
我重复conda update conda了好几天,结果没有变化.我可以看到没有HTTP,但是conda info --a显示了频道网址.
(C:\Users\*****\AppData\Local\Continuum\Anaconda3) C:\Users\*****>conda info -a
Current conda install:
platform : win-64
conda version : 4.3.13
conda is private : False
conda-env version : 4.3.13
conda-build version : 2.1.5
python version : 3.5.3.final.0
requests version : 2.13.0
root environment : C:\Users\*****\AppData\Local\Continuum\Anaconda3 (writable)
default environment : C:\Users\*****\AppData\Local\Continuum\Anaconda3
envs directories : C:\Users\*****\AppData\Local\Continuum\Anaconda3\envs
C:\Users\*****\AppData\Local\conda\conda\envs
C:\Users\*****\.conda\envs
package cache : C:\Users\*****\AppData\Local\Continuum\Anaconda3\pkgs
C:\Users\*****\AppData\Local\conda\conda\pkgs
channel URLs : https://conda.anaconda.org/anaconda-fusion/win-64
https://conda.anaconda.org/anaconda-fusion/noarch
https://repo.continuum.io/pkgs/free/win-64
https://repo.continuum.io/pkgs/free/noarch
https://repo.continuum.io/pkgs/r/win-64
https://repo.continuum.io/pkgs/r/noarch
https://repo.continuum.io/pkgs/pro/win-64
https://repo.continuum.io/pkgs/pro/noarch
https://repo.continuum.io/pkgs/msys2/win-64
https://repo.continuum.io/pkgs/msys2/noarch
config file : C:\Users\*****\.condarc
offline mode : False
user-agent : conda/4.3.13 requests/2.13.0 CPython/3.5.3 Windows/7 Windows/6.1.7601
Run Code Online (Sandbox Code Playgroud)
如何conda update调用正确的HTTP地址?
Par*_*esi 45
我的原始答案被标记为重复,因为我用相同的答案回答了类似的问题,我不知道这是不允许的。我已将我的其他回复标记为重复。希望这能保持下去!
我几乎花了两天的时间来尝试我可以在 Internet 上找到的所有解决方案,但这是对我有用的方法。
所以,CondaHTTPError又名SSL module is not available错误是由libcrypto的缺失/错位引起的anaconda3/DLLs 文件夹文件:
Tl;博士:
从下面的文件
anaconda3\Library\bin复制并将它们粘贴到anaconda3/DLLs:
- libcrypto-1_1-x64.dll
- libssl-1_1-x64.dll
Run Code Online (Sandbox Code Playgroud)
详细回答:
卸载您拥有的任何Python版本(例如 Python 3.7 或 Python 3.8)
转到控制面板--> 程序和功能--> 选择 Python-->
卸载
为Anaconda卸载您可能拥有的任何Anaconda版本(例如 Anaconda 或 miniConda):
转到控制面板-->程序和功能--> 选择Anaconda -->卸载
对于 miniConda
转到控制面板-->程序和功能--> 选择miniconda -->卸载
删除任何剩余的环境变量
转到控制面板-->系统-->高级系统设置(左侧)--> 在系统属性中单击环境变量按钮--> 在用户变量中选择路径并单击编辑按钮-->删除任何相关的路径到 Anaconda、miniConda 或 Python。
E.g.
C:\Users\Bob \AppData\Local\Programs\Anaconda\...
C:\Users\Bob \AppData\Local\Programs\miniconda\...
Run Code Online (Sandbox Code Playgroud)
湾 如果您没有看到任何与 Anaconda、miniConda 或 Python 相关的路径;你已准备好出发。
重启你的机器
下载最新版本的Anaconda
运行该安装程序; 保留所有默认设置
转到您的anaconda3/library/bin文件夹:
例如C:\Users\Bob\AppData\Local\Continuum\anaconda3\Library\bin
复制这些文件:
libcrypto-1_1-x64.dll
libssl-1_1-x64.dll
将这些粘贴到anaconda3/DLLs文件夹中:
重新打开该蟒蛇提示和测试与需要连接到Internet的任何命令。例如
conda update conda
或与
conda update --all
小智 44
在命令行中使用以下代码:
conda config --set ssl_verify no
Run Code Online (Sandbox Code Playgroud)
小智 14
检查您是否位于具有HTTPS/SSL代理的公司防火墙后面.如果是这样,你可能需要更改行.condarc从ssl_verify: true到ssl_verify: false.
我在Mac OS X上遇到了同样的问题和 Miniconda 上在尝试了许多建议的解决方案几个小时后,我发现我需要正确设置 Condas 环境以使用我公司提供的根证书,而不是 Conda 提供的通用证书。
\n\n我是这样解决的:
\n\n使用 openssl 转换此证书:openssl x509 -inform der -in /path/to/your/certificate.cer -out /path/to/converted/certificate.pem
要快速检查,请设置您的 shell 以确认证书:export REQUESTS_CA_BUNDLE=/path/to/converted/certificate.pem
要设置此永久打开您的 shell 配置文件(.bshrs 或例如 .zshrc)并添加此行:export REQUESTS_CA_BUNDLE=/path/to/converted/certificate.pem。现在退出终端/shell 并重新打开。再检查一遍。
你应该已经设置好了,Conda 应该可以正常工作。
\n\nPS:我知道OP可以在Windows上运行。尽管如此,我还是把这个解决方案留在这里,因为我认为它可以帮助解决根本原因。
\n| 归档时间: |
|
| 查看次数: |
56977 次 |
| 最近记录: |