python-无法安装软件包(通过Powershell在venv中)

时间:2018-12-27 13:22:08

标签: python curl pycharm ssl-certificate python-venv

我正在尝试从github获取存储库以在我的Windows 10计算机上工作。该存储库需要大量软件包。我使用的IDE是Pycharm。在pycharm中,系统会自动提示您通过pip安装任何软件包。但是,当我按“安装软件包”或尝试通过pip单独安装任何软件包时,会出现以下错误:

  

无法获取URL https://pypi.org/simple/numpy/:确认ssl证书时出现问题:HTTPSConnectionPool(host ='pypi.org',port = 443):URL超过了最大重试次数:/ simple / numpy /(导致通过SSLError(SSLError(1,'_ssl.c:503:错误:1407742E:SSL例程:SSL23_GET_SERVER_HELLO:tlsv1警报协议版本'),))-跳过

当尝试寻找解决方案时,我遇到了this solution。我在PowerShell中成功打开了venv。然后,该解决方案建议使用以下行:

  

https://bootstrap.pypa.io/get-pip.py | python

但是,这给了我另一个错误,如下:

  

curl:请求已中止:无法创建SSL / TLS安全通道。   在第1行:char:1   + curl https://bootstrap.pypa.io/get-pip.py |蟒蛇   + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       + CategoryInfo:InvalidOperation:(System.Net.HttpWebRequest:HttpWebRequest)[Invoke-WebRequest],WebExc      肽       + FullyQualifiedErrorId:WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

我找不到其他可以帮助我解决问题的解决方案。如果有人可以帮助您进行下一步,将不胜感激。预先感谢。

更新 我重新安装了python,一切都修复了。我猜第一次安装时出现故障。

2 个答案:

答案 0 :(得分:0)

Powershell下载软件包似乎是一个问题。

尝试:

  • 通过网络浏览器下载get-pip.py
  • 在Powershell中导航到将get-pip.py下载到的目录
  • 正在运行;

    <UniformGrid Rows="100" Columns="100" IsItemsHost="True"/>

这应该安装点子。如果安装后无法通过pip下载软件包,则可能是您与pypi.org之间或powershell与传出连接之间存在连接问题。

答案 1 :(得分:0)

错误 curl : The request was aborted: Could not create SSL/TLS secure channel. 的原因是 Powershell 默认使用 TLS 1.0 连接网站,但网站安全需要 TLS 1.2。您可以通过运行以下任何命令来更改此行为以使用所有协议。您也可以指定单个协议。

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls, [Net.SecurityProtocolType]::Tls11, [Net.SecurityProtocolType]::Tls12, [Net.SecurityProtocolType]::Ssl3
[Net.ServicePointManager]::SecurityProtocol = "Tls, Tls11, Tls12, Ssl3"

运行这些命令后运行 https://bootstrap.pypa.io/get-pip.py | python,这样就安装成功了。