Anaconda安装二三事

最近打算转移到python3上 同时之前安装的anaconda2不能正常使用conda更新了(当时没意识到已经调到坑里了) 打算直接删除anaconda2换anaconda3 没想到掉到了坑里。。。。。。
不过坑还是蛮有特色的 干脆总结一下发出了好了


第一个坑

安装快要结束时报错
Failed to create Anaconda menus
Failed to add Anaconda to the system PATH


(图片是从https://github.com/ContinuumIO/anaconda-issues/issues/732抄来的 坑归于up主)

网上提出来的解决方案如下:

  1. 确保安装目录中不包括中文,安装目录不要太长(系统对路径长度有限制,貌似正常2048字符,管理员运行1024字符),直接丢在某个盘符根目录下的Anaconda文件夹就好
  2. 确保提供了管理员权限,原本是为单用户安装的,试试为所有用户安装,反之亦然。
  3. 先安装Microsoft Visual C++ 2008 Redistributable Package (x64) 【传送门:https://www.microsoft.com/en-us/download/details.aspx?id=15336】,重启后再安装Anaconda(我就是这种情况,Win10 Build14393.693,顺利安装完掉到下一个坑里了)
  4. 弹出的对话框全部选择忽略 安装完成后进入cmd手动运行

    "C:\Anaconda\pythonw.exe" -E -s "C:\Anaconda\Lib\_nsis.py" mkmenus
    "C:\Anaconda\pythonw.exe" -E -s "C:\Anaconda\Lib\_nsis.py" mkdirs
    "C:\Anaconda\pythonw.exe" -E -s "C:\Anaconda\Lib\_nsis.py" addpath

    (假设你安装在C:\Anaconda这个目录下了)
  5. 上一种方法失败的话,尝试手动将

    C:\Anaconda
    C:\Anaconda\Scripts
    C:\Anaconda\Library\bin

    (再次假设你安装在C:\Anaconda这个目录下了)
    添加进环境变量 然后在C:\Anaconda和C:\Anaconda\Scripts这两个文件夹中找到你需要的程序手动添加快捷方式到桌面/开始菜单
  6. 重装Windows系统
  7. 干脆的换装Linux或macOSX

第二个坑

conda 更新失败
没错 之前我就在这个坑里

PS C:\Users\Administrator> conda update conda
Fetching package metadata ...

CondaHTTPError: HTTP None None for url 
Elapsed: None

An HTTP error occurred when trying to retrieve this URL.
SSLError(SSLError(SSLError("bad handshake: SysCallError(10054, 'WSAECONNRESET')",),),)

不仅如此 pip也不能使用

PS C:\Users\Administrator> pip install virtualenv
Collecting virtualenv
  Could not fetch URL https://pypi.python.org/simple/virtualenv/: There was a problem confirming the ssl certificate: [S
SL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:749) - skipping
  Could not find a version that satisfies the requirement virtualenv (from versions: )
No matching distribution found for virtualenv

(这里拿pip安装virtualenv做例子 实际上更新conda也不行 报错好像也不完全一样 以及 我当时是在第一个坑里试图更新conda然后手动用_nsis.py安装来着 然后直接掉进这个坑)

CondaHTTPError: HTTP None None for url <None>

这个报错非常有意思 我没在overflow找到类似的问题 也就是全世界那么多能折腾的人都没遇到这个问题 在换句话说 这可能是个XX特色网络问题

结果 在某个g开头e结尾的不存在的搜索引擎上 发现了Tales前辈的文章【传送门:http://talesyuan.blog.163.com/blog/static/920046082016112102643429/】浏览器尝试了一下 repo.continuum.io这个网站果然不存在(当时不存在 换了个网络后它又神奇的出现了)

也就是说 问题出在我的黑科技上了

果断的修改.condarc 添加上这两行

proxy_servers:
    http: http://user:pass@corp.com:8080
    https: https://user:pass@corp.com:8080

结果 出现了

PS C:\Users\Administrator> conda update conda
Fetching package metadata ...

CondaHTTPError: HTTP None None for url 
Elapsed: None

An HTTP error occurred when trying to retrieve this URL.
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(': Failed to establish a new conne
ction: [WinError 10061] 由于目标计算机积极拒绝,无法连接。',)))",),)

然而pip使用–proxy和–trusted-host选项后就完全正常了

关掉我那个x开头net结尾的黑科技工具后 conda仍然不可用 也就是说黑科技工具像370之类的软件一样修改了注册表某处的什么东西导致了conda等全局https走了它的代理服务器
370我还能赶走 黑科技还真舍不得

等等。。。全局?
取消掉全局代理后 conda就能正常联网了


WTF!我在这个坑里浪费了整整一下午!包括重新安装anacond也是因为这个(手动滑稽)

注:不止那个x开头net结尾的科技 我猜还有名字中带着go的那个 至少两个s的那个 都有可能出现开启全局代理ssl验证不上 pip,conda等更新不了的问题

你可能感兴趣的:(Python,其他)