首页 文章

SSLError使用pip install(安装tensorflow)

提问于
浏览
9

安装TF时出现异常:

文件“/usr/local/lib/python2.7/dist-packages/pip/_vendor/cachecontrol/adapter.py”,第46行,发送resp = super(CacheControlAdapter,self).send(request,** kw )文件“/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/adapters.py”,第447行,发送引发SSLError(e,request = request)SSLError :(“握手不好:错误([('SSL例程','SSL3_GET_SERVER_CERTIFICATE','证书验证失败')],)“,)

command: pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.6.0-cp27-none-linux_x86_64.whl

我不知道如何解决这个问题 . 我最近重新安装了pip,可以重装原因吗?

6 回答

  • 1

    对于那些从终端窗口运行macOS的人来说..

    - /Applications/Python\ 3.6/Install\Certificates.command
    
  • 15

    我认为你需要一些安全证书 .

    请尝试以下命令 .

    sudo pip install requests[security]
    

    如果您收到任何错误消息,请卸载并重新安装 python-requests .

    sudo pip uninstall requests
    sudo apt-get install python-requests
    

    我希望它能为您提供所需的证书 . 谢谢 .

  • 0

    SSL错误可以通过以下步骤确定 . 只需自己下载轮子并点击安装即可 .

    # Ubuntu/Linux 64-bit, CPU only:

    $ wget https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl

    $ sudo pip install --upgrade tensorflow-0.5.0-cp27-none-linux_x86_64.whl

    # Ubuntu/Linux 64-bit, GPU enabled:

    $ wget https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl

    $ sudo pip install --upgrade tensorflow-0.5.0-cp27-none-linux_x86_64.whl

  • 2

    使用以下版本的certifi

    pip2 install 'certifi==2015.4.28' --force-reinstall
    

    之后将不再有SSL错误 .

    解决方案在这里找到:https://github.com/kennethreitz/requests/issues/3212

  • 4

    我也遇到了这个问题,在我的情况下使用curl手动下载并没有解决问题 . Curl报道了这个:

    curl: (60) SSL certificate problem: certificate is not yet valid
    

    在我的情况下,问题是我的VM的时钟 - 它落后了 . 重置我的VM的时钟,以便日期时间正确解决问题,我能够直接从pip直接安装 .

    我已将此注释添加到a related GitHub issue filed for TensorFlow . This Unix StackExchange question最终引领我回答 .

  • 0

    这个命令对我有用

    pip3 install --trusted-host pypi.python.org  --upgrade http://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.0.0-py3-none-any.whl
    

    我将请求作为http而不是https,我能够绕过ssl检查 . 希望这可以帮助 .

相关问题