Anaconda 使用 conda 连接网络为什么出现错误 HTTP None None for url?

我使用的是windows10 64bit下的Anaconda2,在安装和更新包的时候出现以下报错信息。
这是使用默认源安装包的报错信息:

C:\Users\ning0>conda install numpy
Fetching package metadata ...

CondaHTTPError: HTTP None None for url <https://repo.continuum.io/pkgs/free/win-64/repodata.json.bz2>
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.
ProxyError(MaxRetryError("HTTPSConnectionPool(host='repo.continuum.io', port=443): Max retries exceeded with url: /pkgs/free/win-64/repodata.json.bz2 (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x00000000048F3048>: Failed to establish a new connection: [Errno 10061] ',)))",),)

下面是使用清华大学的镜像安装的报错信息:

C:\Users\ning0>conda install numpy
Fetching package metadata ...

CondaHTTPError: HTTP None None for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-64/repodata.json>
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.
ProxyError(MaxRetryError("HTTPSConnectionPool(host='mirrors.tuna.tsinghua.edu.cn', port=443): Max retries exceeded with url: /anaconda/pkgs/free/win-64/repodata.json (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x0000000004B19438>: Failed to establish a new connection: [Errno 10061] ',)))",),)

求问这个问题怎么解决啊?我各种网站都找遍了。

阅读 126k
9 个回答

这个问题,我现在又遇到了。应该是我挂了代理的缘故。因为我用的是名字有若干个s的科学上网工具,我用软件把其中的地址转成http之后,在环境变量里面加入http_proxy之后,然后在Internet选项里面,选择使用代理服务器之后就能解决了。

类似的问题,也折腾了我好久,昨晚终于解决了。借这个问题,我把我的踩过的坑都列出来,当然,还有最终(对我有效)的解决方法。

我说下我尝试过哪些吧:

  1. 开梯子,~/.zshrc(我用zsh,所以配置文件是这个,如果你用bash,那可能就是~/.bashrc)文件里添加代理export all_proxy=socks5://127.0.0.1:1082(1. 协议和端口我也尝试换过http/https 2. all_proxy即所有端口的意思)。没用,报HTTP链接错误,和题主报错类似,但不是not found。
  2. 添加国内镜像:试过清华的和中科大的。报错,同上。
  3. 移除过channels里的defaults,同上。
  4. 这期间我还发现了一个奇怪的问题,就是我明明添加了清华的源,但命令行显示却仍旧去访问conda.anaconda.org这个官方源。对了,这个链接我浏览器可以打开。
  5. 最后在网上找到现在的配置,但还是错误,然后继续搜,发现有几个人说把https换成http,我试了下,唉?还真行。

目前我这边可用的配置在这里:
mac|配置路径:/Users/替换成你的用户名/.condarc

channels:
  - defaults
show_channel_urls: true
default_channels:
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
custom_channels:
  conda-forge: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

P.S. 修改配置文件,无需重启命令行软件,也无需source ~/.condarc这种操作。
P.P.S. 不行就重启下试试(评论区有人说他是重启后才可以)

新手上路,请多包涵

你设置了代理或者vpn?手工打开网页试试

新手上路,请多包涵

禁用代理就好

新手上路,请多包涵

如果用的是国外的源的话,有个很简单的解决方案,如果你有科学上网工具的话,直接开全局代理,源就一般不会有问题了。

推荐问题
宣传栏