证书验证失败:无法获取本地颁发者证书

新手上路,请多包涵

我正在尝试使用 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 许可协议

阅读 1.3k
1 个回答

对于仍然想知道如何解决这个问题的人,我通过安装“ Install Certificates.command ”得到了我的

这是我的做法,

安装 Certificates.commad 位置

只需双击该文件等待它安装,就我而言,您就可以开始了

原文由 Ayyoub 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题