一图看懂 certifi 模块:证书路径, 资料整理+笔记(大全)

本文由 大侠(AhcaoZhu)原创,转载请声明。
链接: https://blog.csdn.net/Ahcao2008

Alt

摘要

全文介绍系统内置 certifi 模块、函数、类及类的方法和属性。
它通过代码抓取并经AI智能翻译和人工校对。
是一部不可多得的权威字典类工具书。它是系列集的一部分。后续陆续发布、敬请关注。【原创:AhcaoZhu大侠】

模块图及类关系图

因过于简单,所以合并成一图了。
certifi-mod-class

certifi
	certifi.core
		◆sys

类关系图

◆object
	◆_frozen_importlib.BuiltinImporter

模块全展开

【certifi】

certifi, fullname=certifi, file=site-packages\certifi_init_.py

统计

序号类别数量
4str5
6list2
8dict1
9module1
11function2
13residual3
14system11
16all14

常量

模块

1 certifi.core

core, fullname=certifi.core, file=certifi\core.py

certifi.py
该模块返回 cacert.pem 的安装位置或其内容。

函数

2 contents() -> str

contents() -> str, module=certifi.core, line:76 at site-packages\certifi\core.py

3 where() -> str

where() -> str, module=certifi.core, line:51 at site-packages\certifi\core.py

这稍有点可怕,但我们希望在zipimport的情况下延迟提取文件,直到有人真正调用where(),
但我们不想在每次调用where()时都重新提取文件,所以我们只做一次,然后将其存储在一个全局变量中。

当 _CACERT_PATH 为 None 时:
这个importlib稍微有点繁琐。
资源API希望你管理这个文件的清理,所以它实际上不返回路径,它返回一个上下文管理器,
它会在你进入路径时给你路径并在你离开它时做任何清理。
在不需要临时文件的常见情况下,它将只返回文件系统位置,并且__exit__()是无操作的。
我们还需要保留实际的上下文管理器,因为它会在垃圾收集时进行清理,所以我们也会将它存储在全局级别。

当版本低于 3.7 时:
此回退将适用于缺乏importlib.resources模块但依赖于现有'where'函数的3.7之前的Python版本,
因此不会解决PyOxidizer等未在模块上设置__file__的环境变量的问题。
如果我们没有importlib.resources,那么我们将使用旧的逻辑,假设我们在文件系统上并直接修改路径。

【certifi.core】

core, fullname=certifi.core, file=certifi\core.py

【sys】

sys, fullname=sys

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AhcaoZhu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值