我正在尝试使用 python 从 web 获取数据。我为它导入了 urllib.request 包,但在执行时,出现错误:
certificate verify failed: unable to get local issuer certificate (_ssl.c:1045)
- 我在 Mac OS High Sierra 上使用 Python 3.7。
- 我正在尝试从以下位置获取 CSV 文件: https ://s3.amazonaws.com/assets.datacamp.com/production/course_1606/datasets/winequality-red.csv
当我将 URL 更改为“http”时 - 我能够获取数据。但是,我相信,这避免了检查 SSL 证书。
所以我在网上查了一下,找到了一个解决方案:运行 /Applications/Python\ 3.7/Install\ Certificates.command
这解决了我的问题。但我对 SSL 之类的东西一无所知。你能帮我理解它实际上做了什么来解决我的问题吗?
如果可能的话,请给我推荐任何好的资源来了解安全和证书。我是新来的。
谢谢!
注意:我确实通过了链接 - openssl,python 请求错误:“证书验证失败”
我的问题与链接中的问题不同,因为我想知道当我安装 certifi
包或运行 Install\ Certificates.command
修复错误时实际发生了什么。我对证券的了解很差。
原文由 biswajit 发布,翻译遵循 CC BY-SA 4.0 许可协议
对于仍然想知道如何解决这个问题的人,我通过安装“
Install Certificates.command
”得到了我的这是我的做法,
只需双击该文件等待它安装,就我而言,您就可以开始了