zoukankan      html  css  js  c++  java
  • python 里 certifi 库的作用

    python 里 certifi 库的作用


    安装了certifi之后,和requests库一样也有一个cacert.pem,可以用编辑器打开cacert.pem,里面包含了很多可信任知名公司的证书/公钥
    库的路径,我这里是python2.7

    C:Python27Libsite-packagespip\_vendor
    equestscacert.pem
    C:Python27Libsite-packagescertificacert.pem

    实际上,requests库也是调用-》certifi库

    所以访问百度不会报错,因为百度的根证书已经在C:Python27Libsite-packagescertificacert.pem里面,requests库的请求方法参数verify默认是true

    r = requests.get("https://wwww.baidu.com",timeout=(10, 10))

    通过360浏览器可以看到百度的根证书,查一下cacert.pem文件,确实是有根证书的

    # Issuer: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Root CA
    # Subject: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Root CA
    # Label: "GlobalSign Root CA"

    certifi 库安装文件夹里面只有一个core.py和cacert.pem文件,core.py里面只有一个where()函数,用来返回cacert.pem的路径,所以经常更新certifi库本质就是要经常更新cacert.pem文件

    我本机上requests库和certifi库的版本

    requests==2.19.1
    certifi==2018.8.13
  • 相关阅读:
    网络编程 TCP
    网络编程之 osi七层协议
    面向对象之元类,单例
    面向对象之异常处理
    面向对象之多态
    面向对象之封装
    mysql 单表查询
    mysql 行(记录)的详细操作
    mysql 库表的操作
    数据库初识
  • 原文地址:https://www.cnblogs.com/lyhabc/p/13233037.html
Copyright © 2011-2022 走看看