首先是这个from . import,我这个小菜鸡去查了一下(https://realpython.com/absolute-vs-relative-python-imports/),就是绝对(absolute)和相对(relative)引入的区别:
import会去sys.modules(一个字典,记录了所有预加载的模块)里面查找是否有相对应的包*如果未找到,那么python就会去python 标准库(standard library)里面查找,如果还没有找到,那么就会去sys.path(通常包括目前文件夹)里面继续查找如果找到,那么这个名字就和被和这个包绑定起来,就不会出现nameerror一个dot就代表这个模块或者包在同级目录,两个dot表示这个在上一级目录中
在同级exception.py中,RequestsDependencyWarning继承了RequestsWarning,RequestsWarning继承了Warning
def check_compatibility(urllib3_version, chardet_version): def _check_cryptography(cryptography_version):这两个函数就是检查依赖包的版本(#注意,代码里面的urllib是1.x.x版本,chardet是3.x.x版本,后续可能也要继续修改。如果有大神指出,
这里有什么办法可以很好的自动获取最低版本号码?总结:这一部分自定了很多Error(基于python 标准库中的 Warning),引入了一些写好的组件模块。
