Python中certifi模块的作用与用法简介
发布时间:2023-12-25 11:10:31
certifi是一个Python模块,用于提供最新的根证书集合。根证书是用于验证SSL证书(HTTPS连接)的一组公钥,包含了受信任的证书颁发机构的公钥。
作用:
certifi模块的主要作用是提供一个可靠和最新的根证书集合,用于验证SSL证书的有效性。每次更新在根证书中添加、删除和更新证书后,需要确保本地的根证书也进行了更新,以确保与远程服务器建立的安全连接。
用法:
要使用certifi模块,首先需要安装它。可以使用pip命令来安装certifi模块:
pip install certifi
安装完毕后,可以在Python脚本中导入certifi模块,并使用它提供的函数来获取根证书路径或证书文件内容。
首先,通过导入certifi模块:
import certifi
可以使用certifi.where()函数来获取根证书的路径:
cafile = certifi.where() print(cafile)
输出的结果将会是一个根证书的文件路径,例如:
/etc/ssl/certs/ca-certificates.crt
如果需要获取证书文件的内容,可以使用certifi.contents()函数:
cert_contents = certifi.contents() print(cert_contents)
输出的结果将会是一个字符串,包含了根证书的内容。
以下是一个完整的示例,用于验证HTTPS连接的有效性:
import requests
import certifi
# 设置根证书
cafile = certifi.where()
# 发起HTTPS请求
response = requests.get('https://www.google.com', verify=cafile)
# 打印请求结果
print(response.status_code)
以上示例中,首先导入certifi模块,并使用certifi.where()函数获取根证书的路径。然后,使用requests库发起一个HTTPS请求,并通过verify参数指定根证书的路径。最后,打印请求的状态码。
总结:
certifi模块提供了一个可靠和最新的根证书集合,用于验证SSL证书的有效性。通过导入certifi模块,可以获取根证书的路径或证书文件内容,并将其用于验证HTTPS连接。
