首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >警告: pip配置了需要TLS/SSL的位置,但Python中的ssl模块不可用

警告: pip配置了需要TLS/SSL的位置,但Python中的ssl模块不可用
EN

Stack Overflow用户
提问于 2020-07-10 12:20:26
回答 2查看 38.9K关注 0票数 11

我想在Google Cloud Compute Engine上使用Python3.8.x。

首先,我使用gcloud命令创建了一个实例。

代码语言:javascript
复制
gcloud compute instances create \
  pegasus-test \
  --zone=asia-northeast1-b \
  --machine-type=n1-highmem-8 \
  --boot-disk-size=500GB \
  --image-project=ml-images \
  --image-family=tf-1-15 \
  --maintenance-policy TERMINATE --restart-on-failure

默认情况下,Python版本为3.5.3。

代码语言:javascript
复制
python3 -V
Python 3.5.3

因此,我升级了Python。我遵循了这条指令。(google cloud compute engine change to python 3.6)

代码语言:javascript
复制
cd /tmp
wget https://www.python.org/ftp/python/3.8.3/Python-3.8.3.tgz
tar -xvf Python-3.8.3.tgz
cd Python-3.8.3
./configure
sudo apt-get install zlib1g-dev
sudo make
sudo make install

我没有收到错误消息。现在,我有了Python3.8.3。

代码语言:javascript
复制
python3 -V
Python 3.8.3

接下来,我想使用PEGASUS。(https://github.com/google-research/pegasus)

代码语言:javascript
复制
git clone https://github.com/google-research/pegasus
cd pegasus
export PYTHONPATH=.
pip3 install -r requirements.txt

然后,我收到一条错误消息。

代码语言:javascript
复制
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting absl-py (from -r requirements.txt (line 1))
  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/absl-py/
  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/absl-py/
  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/absl-py/
  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/absl-py/
  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/absl-py/
  Could not fetch URL https://pypi.org/simple/absl-py/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(
host='pypi.org', port=443): Max retries exceeded with url: /simple/absl-py/ (Caused by SSLError("Can't connect to HTTPS URL beca
use the SSL module is not available.")) - skipping
  ERROR: Could not find a version that satisfies the requirement absl-py (from -r requirements.txt (line 1)) (from versions: non
e)
ERROR: No matching distribution found for absl-py (from -r requirements.txt (line 1))
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='
pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SS
L module is not available.")) - skipping

我检查了pip的版本。

代码语言:javascript
复制
pip3 -V
pip 19.2.3 from /usr/local/lib/python3.8/site-packages/pip (python 3.8)

所以,我试着升级pip。pip3 install --upgrade pip然后,我得到了这个错误消息。

代码语言:javascript
复制
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("Ca
n't connect to HTTPS URL because the SSL module is not available.")': /simple/pip/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Ca
n't connect to HTTPS URL because the SSL module is not available.")': /simple/pip/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Ca
n't connect to HTTPS URL because the SSL module is not available.")': /simple/pip/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Ca
n't connect to HTTPS URL because the SSL module is not available.")': /simple/pip/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Ca
n't connect to HTTPS URL because the SSL module is not available.")': /simple/pip/
Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='
pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SS
L module is not available.")) - skipping
Requirement already up-to-date: pip in /usr/local/lib/python3.8/site-packages (19.2.3)
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='
pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SS
L module is not available.")) - skipping

因此,接下来我使用了pip而不是pip3。I输入pip install -r requirements.txt

这就是结果。

代码语言:javascript
复制
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: absl-py in /usr/local/lib/python2.7/dist-packages (from -r requirements.txt (line 1)) (0.9.0)
Requirement already satisfied: mock in /usr/local/lib/python2.7/dist-packages (from -r requirements.txt (line 2)) (3.0.5)
Requirement already satisfied: numpy in /usr/local/lib/python2.7/dist-packages (from -r requirements.txt (line 3)) (1.16.6)
Collecting rouge-score
  Downloading rouge_score-0.0.4-py2.py3-none-any.whl (22 kB)
Collecting sacrebleu
  Downloading sacrebleu-1.3.7.tar.gz (26 kB)
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-HCHhuX/sacrebleu/setup.p
y'"'"'; __file__='"'"'/tmp/pip-install-HCHhuX/sacrebleu/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f
.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/
pip-install-HCHhuX/sacrebleu/pip-egg-info
         cwd: /tmp/pip-install-HCHhuX/sacrebleu/
    Complete output (7 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-HCHhuX/sacrebleu/setup.py", line 65, in <module>
        version = get_version(),
      File "/tmp/pip-install-HCHhuX/sacrebleu/setup.py", line 56, in get_version
        with open(os.path.join(os.path.dirname(__file__), 'sacrebleu.py'), encoding='utf-8') as fin:
    TypeError: 'encoding' is an invalid keyword argument for this function
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
WARNING: You are using pip version 20.0.2; however, version 20.1.1 is available.
You should consider upgrading via the '/usr/bin/python -m pip install --upgrade pip' command.

如何实现pip3 install -r requirements.txt?你能给我一些建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-15 20:07:23

我遇到了同样的问题,不得不花几天时间来解决。在探索了许多不同的解决方案之后,this解决了pip ssl问题。

票数 10
EN

Stack Overflow用户

发布于 2020-11-07 13:32:16

通过安装openssl在windows 10上解决了这个问题。

used this link

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62827291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档