首页 > 解决方案 > Python关闭证书验证

问题描述

我需要在 Python 脚本中禁用证书验证。如果我在请求中使用“verify=False”,我的脚本就可以工作,例如: result = requests.get('https://google.com', verify=False)

我想使用一个参数来启用/禁用验证。例如:

#!/usr/bin/python
import requests
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--cert-verify', dest='cert_verify', help="Turn verification on/off")
args = parser.parse_args()

result = requests.get('https://google.com', verify=args.cert_verify)
print(result)

我在结果中收到此错误:

./verify.py --cert-verify 'False'

requests.exceptions.SSLError: [Errno 2] No such file or directory

看起来“False”值被忽略并且脚本正在寻找 CA/路径。如何修复此错误?

标签: pythonssl-certificate

解决方案


你需要添加action="store_true"ie

parser.add_argument('--cert-verify', dest='cert_verify', help="Turn verification on", action="store_true")

然后按照以下方式使用它

./verify.py --cert-verify

如果您想了解更多信息,请阅读Argparse 教程


推荐阅读