本文由 大侠(AhcaoZhu)原创,转载请声明。
链接: https://blog.csdn.net/Ahcao2008
一图看懂 certifi 模块:证书路径, 资料整理+笔记(大全)
- 摘要
- 模块图及类关系图
- 类关系图
- 模块全展开
- 【certifi】
- 统计
- 常量
- 模块
- 1 certifi.core
- 函数
- 2 contents() -> str
- 3 where() -> str
- 【certifi.core】
- 【sys】
摘要
全文介绍系统内置 certifi 模块、函数、类及类的方法和属性。
它通过代码抓取并经AI智能翻译和人工校对。
是一部不可多得的权威字典类工具书。它是系列集的一部分。后续陆续发布、敬请关注。【原创:AhcaoZhu大侠】
模块图及类关系图
因过于简单,所以合并成一图了。
certifi
certifi.core
◆sys
类关系图
◆object
◆_frozen_importlib.BuiltinImporter
模块全展开
【certifi】
certifi, fullname=certifi, file=site-packages\certifi_init_.py
统计
序号 | 类别 | 数量 |
---|---|---|
4 | str | 5 |
6 | list | 2 |
8 | dict | 1 |
9 | module | 1 |
11 | function | 2 |
13 | residual | 3 |
14 | system | 11 |
16 | all | 14 |
常量
模块
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