(转)anaconda新建环境在PyCharm执行import ssl失败

版权声明:转自博主 jshagw 链接:https://blog.csdn.net/gw85047034/article/details/88039705

基于 https://mp.csdn.net/postedit/88018697 配置的keras_tf环境

本来想先验证一下TensorFlow的使用,发现以下一些问题

1、发现缺少PIL

使用 pip install PIL,直接报错,找不到相应的版本

原来官网只有32位版本,要从第三方安装64位版本,而且是安装pillow

pip install pillow

参考链接

https://blog.csdn.net/rock_97/article/details/61195313

https://blog.csdn.net/u013517229/article/details/81076705

2、报HTTPS错误

urllib.error.URLError: <urlopen error unknown url type: https>

参考链接 https://blog.csdn.net/zyz511919766/article/details/25049365

调试发现在anaconda3默认的环境下,是支持https的,跟踪源码,发现是在新建环境的envs\keras_tf\Lib\http\client.py的1340行

  1. try:
  2. import ssl
  3. except ImportError:
  4. pass
  5. else:

此处import ssl失败,导致不支持https。

安装ssl,pip install ssl,又报错

"python setup.py egg_info" failed with error code 1

参考 https://www.cnblogs.com/qq952693358/p/9592300.html

https://stackoverflow.com/questions/35991403/pip-install-unroll-python-setup-py-egg-info-failed-with-error-code-1

https://blog.csdn.net/u011324454/article/details/79076885

升级setuptools、pip,提示已经是最新版本了

使用easy_install也不行

最后放弃,重新把anaconda环境安装,重新来一遍,新建一个ssl环境,验证import ssl,发现在anaconda prompt可以正常,但在PyCharm环境就不行,参考 https://ask.csdn.net/questions/724196 里面的说法,可能跟清华镜像有问题,比对了anaconda安装目录下Python文件,跟envs/ssl目录下的的确是不一样的,再次发现两个版本不一样,anconda用的是3.7.0,而新建环境命令conda create -n ssl python=3.7新建的环境,python安装的是3.7.2。

使用conda create -n ssl python=3.7.0,创建跟conda的python版本一样的环境,再次验证,PyCharm环境也可以正常加载ssl了。

结论:原来是多个Python版本导致的,应该是PyCharm要求用的python环境必须版本一样,因为刚开始用的anconda的python是3.7.0,PyCharm已经跟anconda配置过,后面再新建3.7.2的环境,在PyCharm中切换python环境的话,就导致ssl加载错误了。

最后,将3.7.2的环境删除掉

conda remove -n ssl --all

conda info -e 查看确认已经删除

 

 

posted @ 2020-01-17 17:31  南唐周七  阅读(556)  评论(0)    收藏  举报