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

python - Can't install packages (in venv via Powershell)

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

Could not fetch URL https://pypi.org/simple/numpy/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/numpy/ (Caused by SSLError(SSLError(1, '_ssl.c:503: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version'),)) - skipping

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

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

然而,这给了我另一个错误如下:

curl : The request was aborted: Could not create SSL/TLS secure channel. At line:1 char:1 + curl https://bootstrap.pypa.io/get-pip.py | python + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebExc eption + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

我找不到任何进一步的解决方案可以帮助我解决这个问题。如果有人可以帮助下一步,将不胜感激。提前致谢。

更新 我重新安装了 python,一切都自行修复了。我猜是第一次安装的时候坏了。

这似乎是 Powershell 下载包的问题。

尝试:

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

     python get-pip.py
    

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

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

[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,这样就安装成功了。