16.04 版全新安装中 Python 3 缺少 SSL

16.04 版全新安装中 Python 3 缺少 SSL

因此,我的项目所需的模块需要安装 SSL。我听说 Ubuntu 自带的 Python 支持 SSL,因此我使用以下命令检查了全新安装的 Ubuntu 16.04 LTS 64 位上是否有 SSLOli 的代码片段

from urllib.request import urlopen
urllib.request.urlopen('https://askubuntu.com').read()

他们说如果 SSL 正常工作,它应该会输出一些 HTML,但我收到的只是这个错误:

Traceback (most recent call last):
  File "ssltest.py", line 2, in <module>
    urllib.request.urlopen('https://askubuntu.com').read()
NameError: name 'urllib' is not defined

记住,这是 Ubuntu 16.04 的全新安装,我已经看到很多其他答案说它应该带有 SSL

  • 我需要安装该urllid模块吗?
  • 我是否需要安装其他模块?
  • 我是否需要获取某种 SSL“证书”?
  • 我是否需要重新编译 Python 并冒着系统崩溃的风险?(希望不是这个)
  • 我需要重新安装 Ubuntu 吗?
  • 还有别的吗?

答案1

还有别的吗?

错误仅出现在您的程序中(以及您引用的原始帖子中,我现在已经修复了该错误)。您必须使用导入的 urlopen 函数:

from urllib.request import urlopen
urlopen('https://askubuntu.com').read()

或者导入 urllib.request 库:

import urllib.request
urllib.request.urlopen('https://askubuntu.com').read()

但不能将两者混合使用,即使用仅导入了函数的库,就像您的情况一样。

相关内容