requests访问http很简单,但访问https页面时,需要设置是否验证服务器等情况。
当验证服务器时需要指定根证书路径进行访问,不验证证书访问时会返回证书验证警告。
-
访问时不验证服务器身份:
import requests from requests.packages import urllib3 urllib3.disable_warnings() #这一句禁用告警 response = requests.get("https://localhost/bash",verify=False) print(response.status_code)
-
访问时需要验证服务器身份:
需要通过verify 传入 CA_BUNDLE 文件的路径,或者包含可信任 CA 证书文件的文件夹路径:
requests.get('https://localhost/bash', verify='证书路径')
#通过Session对象进行指定证书路径 s = requests.Session() s.verify = '证书路径'
-
带客户端证书访问服务器:
requests.get('https://localhost/bash', cert=('/path/myclient.cert', '/path/myclient.key'))
<Response [200]>
#通过Session对象指定
s = requests.Session()标签:证书,verify,访问,Session,https,requests,页面 From: https://www.cnblogs.com/dingbj/p/requests.html
s.cert = '/path/myclient.cert'