windows10/11 conda 命令报错 和 pip3 install SSLError错误解决方案

windows11 下安装 miniconda 疑难问题解析

1. 问题发生背景(每次搞windows的python环境都很恶心):

当我们安装miniconda后,如果默认将miniconda的目录安装在了C盘默认路径,就会在conda create的时候,在C盘里创建目录,这个目录貌似是缺少什么权限的,在pycharm中使用时,会导致import _ssl的报错,如下图,该问题如果按下面的操作步骤将,python环境放在D盘,并且把D盘里的envs文件夹的当前用户的权限设为所有权限允许,就OK了。

配置方式如下,这种方式比直接用conda的环境来处理更高级,共用不同的python 版本解释器,又能将包按project进行划分,非常推荐

Traceback (most recent call last):
  File "C:/Program Files/JetBrains/PyCharm2023/plugins/python/helpers/pydev/pydevconsole.py", line 5, in <module>
    from _pydev_comm.pydev_rpc import make_rpc_client, start_rpc_server, start_rpc_server_and_make_client
  File "C:\Program Files\JetBrains\PyCharm2023\plugins\python\helpers\pydev\_pydev_comm\pydev_rpc.py", line 4, in <module>
    from _pydev_comm.pydev_server import TSingleThreadedServer
  File "C:\Program Files\JetBrains\PyCharm2023\plugins\python\helpers\pydev\_pydev_comm\pydev_server.py", line 4, in <module>
    from _shaded_thriftpy.server import TServer
  File "C:\Program Files\JetBrains\PyCharm2023\plugins\python\helpers\third_party\thriftpy\_shaded_thriftpy\server.py", line 9, in <module>
    from _shaded_thriftpy.transport import (
  File "C:\Program Files\JetBrains\PyCharm2023\plugins\python\helpers\third_party\thriftpy\_shaded_thriftpy\transport\__init__.py", line 9, in <module>
    from .sslsocket import TSSLSocket, TSSLServerSocket
  File "C:\Program Files\JetBrains\PyCharm2023\plugins\python\helpers\third_party\thriftpy\_shaded_thriftpy\transport\sslsocket.py", line 7, in <module>
    import ssl
  File "C:\Users\senzo\.conda\envs\python38\lib\ssl.py", line 98, in <module>
    import _ssl             # if we can't import it, let the error propagate
ImportError: DLL load failed while importing _ssl: 找不到指定的模块。
Couldn't connect to console process.

1. 如果选择个人用户,会默认安装到ProgramData目录下,好像没啥大问题,但是如果选择所有用户(我真是多此一举,以后所有软件都Just me就对了),则env 总是会默认安装到 C:\Users\senzo\.conda\envs 很恶心,即使你在C:\Users\senzo\ 目录下创建了 .condarc 文件

【Anaconda3】关于conda环境的安装路径问题 | 为什么conda环境默认在C盘_anaconda配置环境老是在c盘-CSDN博客

.condarc 文件内部截图

配置了路径,仍然还是会安装到 C:\Users\senzo\.conda\envs 有大佬说改指定目录envs的权限,如下图

将当i前用户的所有权限都勾选上

这样设置完了之后,就可以安装到指定路径下去了

terminal 如果配置为 powershell 的话,两者表现差异很大,尤其对于conda的处理方式,pycharm可以直接使用conda切换环境

webstorm的terminal没有变化,甚至不如直接使用powershell,有时候powershell直接打开后,conda命令可以直接用,但是在webstorm的terminal就保找不到该命令

处理办法就是将miniconda的bin目录添加到环境变量,我是偷懒直接把用户变量和系统变量都填了,如果不知道你的conda路径,你可以whereis conda,powershell就会显示conda的路径了,是个以.bat结尾的,不是.exe结尾的,这个要注意区分,因为使用mac电脑编写,不方便截图(后补)

最重要的是重启电脑.... 注销也行,否则webstorm重启多少次还都是显示conda指令找不到,可能windows有source /etc/profile 这种,但是我没有花心思去找,直接重启来得更快,大家可以去解决,欢迎留评贴链接

pycharm 底层应该是做了处理,使得terminal下可以支持conda activate py27 这个真是让我惊呆了,如果不是自己平常也用python,真想不到还有这招...

我是在构建franz碰得坑,目前franz还没运行起来,执行命令

franz 这套代码有点坑,无论是windows还是mac都运行不起来,大家没有相当的技术底蕴就不要尝试了,能解决的大佬可以给我留个言

npx lerna bootstrap 会报错,提示node-gyp 运行时,报得是c语言的错,到官网去看了看,官网node-gyp版本比给的高,当下运行的是node-gyp@3.8.0,最新是9.3.1,支持python3,感觉应该是哪里需要调整,把版本升起来就能搞定了,这里暂且记录一下

处理方式?

我的方式就是跑到pycharm的开发器下,用pycharm的terminal来处理webstorm的代码,感觉这样最简单,懒得去解决这些底层问题,又毫无意义,但凡这些文档能写得详细一点,也不会浪费这些时间

为何会写记录这篇内容?

electron 打包编译的过程中,会牵涉到python脚本的运行和使用,平时基本不会遇见;

windows下conda create -n py27 python=2.7时会报错,然后输出一堆环境变量,这个竟然跟开proxy 有关,只要关闭proxy即可,mac下没有此问题

conda activate python38 报错,找不到activate命令

conda init 然后再重开cmd,再输入从打activate python38就OK了

conda init 是用来配置你的 shell(比如说 Bash 或者 Zsh)以便于使用 Anaconda 或者 Miniconda 创建的 Python 环境和包管理器。它会修改你的 shell 配置文件(比如 .bashrc 或者 .zshrc)来设置环境变量和路径,使得你可以轻松地使用 conda 命令管理你的 Python 环境和安装的包。这个命令一般在安装 Anaconda 或者 Miniconda 后执行,以确保 conda 命令可以在你的 shell 中正常工作。

另外就是打开specify protocol 开关,specify protocol 开关的意义是

从网上说,可以自行设置https_proxy 和 http_proxy 来改变控制台,这个没试,conda国内就可以用,直接关闭 proxy 即可

windows11系统上,如果采用 `conda create --name python38 python=3.8`的方式,创建python38环境,同时用这个环境在pycharm中追加  

(venv) D:\pycharmProjects\whatsapp-desktop-api>pip3 install -r requirements.txt 
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/aiofiles/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/aiofiles/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/aiofiles/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/aiofiles/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /simple/aiofiles/

以上错误只是镜像的域名要添加到信任里面,其他方式都不好使,主要在于--trusted-host xxx 这个参数,这里我用的阿里云镜像,mac机器没有这个问题

pip install -r requirements.txt -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

pycharm 的terminal如果换成powershell不能自动切换为venv的环境

 而cmd.exe 可以,cmd.exe的支持最好

git bash.exe 窗口也可以自动切,但是没有venv的标识,不好区分,但是颜色提示,也挺好

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

森叶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值