python-3.x - SSL:urllib 中的证书验证失败 - Python 3.6.13
问题描述
我正在尝试从 MoleculeNet 数据集中获取deepchem
用于我的深度学习项目的数据。但是由于 Python3.6 的 urllib,加载数据集会导致错误。另外,我使用的是 Ubuntu 16.04。
import deepchem
tasks, datasets, transformers = deepchem.molnet.load_delaney(featurizer='GraphConv')
您可以在下面找到错误日志和消息:
File "/usr/lib/python3.6/urllib/request.py", line 1349, in do_open
encode_chunked=req.has_header('Transfer-encoding'))
File "/usr/lib/python3.6/http/client.py", line 1287, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/usr/lib/python3.6/http/client.py", line 1333, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "/usr/lib/python3.6/http/client.py", line 1282, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/lib/python3.6/http/client.py", line 1042, in _send_output
self.send(msg)
File "/usr/lib/python3.6/http/client.py", line 980, in send
self.connect()
File "/usr/lib/python3.6/http/client.py", line 1448, in connect
server_hostname=server_hostname)
File "/usr/lib/python3.6/ssl.py", line 407, in wrap_socket
_context=self, _session=session)
File "/usr/lib/python3.6/ssl.py", line 817, in __init__
self.do_handshake()
File "/usr/lib/python3.6/ssl.py", line 1077, in do_handshake
self._sslobj.do_handshake()
File "/usr/lib/python3.6/ssl.py", line 689, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:852)
我搜索了该问题并阅读了有关在 SSL:CERTIFICATE_VERIFY_FAILED 上使用以下命令在 Ubuntu 18.04.1 上创建新证书的信息:
$ sudo update-ca-certificates --fresh
$ export SSL_CERT_DIR=/etc/ssl/certs
但是这个解决方案对我不起作用,我仍然遇到同样的错误,可能是因为我使用的是 Ubuntu 16.04 而不是 Ubuntu 18.04。
尝试urllib
向 Google 发送请求工作正常,下面我得到代码 200。
import requests
requests.get("https://google.com")
由于这个问题,我无法运行我的深度学习程序,而且我以前从未遇到过这种安全错误。我会感谢你的任何帮助。
解决方案
推荐阅读
- c++ - 我们应该如何在结构中添加功能?
- javascript - 悬停时显示一个人的元素
- sql - 如何在 SQL Server 中构建父子层次结构(从根开始)?
- qgis - QField - 输入字段的输入表单中的子菜单
- mysql - 如何从 GCP 上的实例备份恢复单个数据库?
- sql - 您可以根据自定义逻辑重新排列 sql 表中的行吗?
- javascript - 如何使用带有 codeigniter 的 Select2 插件将多个数据插入我的数据库?
- r - For循环计算R中曲线下的面积(无功能)
- node.js - 使用 multer 将图像上传到 mongoDB Atlas 的策略?
- android - 在路径上找不到类:DexPathList 问题