我有类似于下面的 python 脚本,脚本在我的个人笔记本电脑上运行良好。
import plivo
import sys
auth_id = "XXXXXX"
auth_token = "YYYYYYYYYYYY"
test = plivo.RestClient(auth_id, auth_token)
message_created = test.messages.create(
src='ZZZZZZ',
dst='+NNNNN',
text='Testing!!'
)
但是在我们组织的 PC 上运行脚本时出现抛出错误
raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='api.plivo.com', port=443): **Max retries exceeded with url**: /v1/Account/SXXXXXYW/Message/ (Cau
sed by SSLError(SSLError(1, u'[SSL: **CERTIFICATE_VERIFY_FAILED**] certificate verify failed (_ssl.c:590)'),))
我尝试添加 ssl._create_default_https_context = ssl._create_unverified_context 和 PYTHONHTTPSVERIFY=0 但不幸的是对我没有任何作用。谁能帮我解决这个错误?
最佳答案
尝试来自 https://github.com/locustio/locust/issues/417 的解决方案
如何摆脱“SSL: CERTIFICATE_VERIFY_FAILED”错误
在 Windows 上,Python 不查看系统证书,它使用自己的位于 ?\lib\site-packages\certifi\cacert.pem。
您的问题的解决方案:
- 将域验证证书下载为 *.crt 或 *pem 文件
- 在编辑器中打开文件并将其内容复制到剪贴板
- 找到您的 cacert.pem 位置:from requests.utils import DEFAULT_CA_BUNDLE_PATH; 打印(DEFAULT_CA_BUNDLE_PATH)
- 编辑 cacert.pem 文件并粘贴您的域验证 文件末尾的证书。
- 保存文件并享受请求!
关于python - SSL: CERTIFICATE_VERIFY_FAILED] 从 python 脚本生成 SMS 时证书验证失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51781945/