当前位置: 首页 > 知识库问答 >
问题:

SSL:CERTIFICATE_VERIFY_FAILED证书验证失败

史和泰
2023-03-14
from lxml import html
import requests


url = "https://website.com/"
page = requests.get(url)
tree = html.fromstring(page.content)
page.content

-

我运行了此脚本,但出现了此错误。我怎么做?

共有1个答案

巫朝明
2023-03-14

由于您的URL是内部公司URL(如注释中所述),我猜它使用自签名证书,或者由自签名CA证书颁发。

如果事实如此,你有两个选择:

(1) 为请求提供公司CA(包括完整的中间证书链,如果有)的路径。get()通过验证参数调用:

requests.get('https://website.lo', verify='/path/to/certfile')

或者(2),完全禁用客户端证书验证(但要注意由此带来的所有安全风险,如简单的中间人攻击等):

requests.get('https://website.lo', verify=False)

为确保完整性,相关的验证参数在请求中进行了描述。请求()文档:

verify -- (optional) Either a boolean, in which case it controls whether we verify 
          the server's TLS certificate, or a string, in which case it must be a path 
          to a CA bundle to use. Defaults to True.

 类似资料:
  • 我试图使用来自Github(https://github.com/gto76/betbrain-scraper)的betbrain.py,其中包含以下代码: 但是,当运行时,它会返回此错误 我怎样才能解决这个问题?我在MacOS 10.12.1上运行Python 3.6.0

  • 问题内容: 我使用安装了python 3.6 并尝试从https下载文件,但会引发错误 ssl.SSLError:[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败(_ssl.c:749) 在Python安装(从.pkg)的,自述指示一个需要运行在安装后到 安装 将认证路径符号链接到路径 才能使用证书。 但是,在brew install中,该文件不存在并且似乎没有运行。 问

  • 在我的python脚本中,我尝试调用api,如下所示: 我得到以下例外情况: 我想打电话给我的服务人员https://example.com.它适用于http://连接,但不适用于https://。我应该为https连接做什么?另外,当我通过Rest客户端以https方式调用该服务时,它工作得非常好。是否有其他方式将该服务称为https连接?

  • 我正在使用Py魅力和python 3.8和最新版本的不和谐。我试图运行这个脚本,但得到了这个错误。有人能帮忙吗? -------以下------ 错误 /Users/mellie/PycharmProjects/Dominations/venv/bin/python/Users/mellie/PycharmProjects/Domi。py回溯(最后一次调用):文件“/Users/mellie/Py

  • 问题内容: 遇到了应从具有自签名证书的邮件服务器发送电子邮件的问题,我得到的错误是: 有没有人遇到过类似的事情? 编辑: 我也尝试过设置stream_context参数(params:SSL上下文选项): 运气不好,它仍然会失败,并出现与上述相同的错误。 谢谢。 问题答案: PHP 5.6引入了SSL证书验证,因此,如果您的配置被破坏,它将因该错误而失败。您应该修复SSL,但是可以通过将属性设置为

  • 问题内容: 尝试上使用。 无论软件包如何,pip安装都会失败。例如,还会导致SSL错误。 原始安装的Python 3.4.1包含pip 1.5.6。我尝试做的第一件事是安装已经安装,它是ArcGIS附带的。python并且pip直到我安装3.4.1时才可从命令行使用。 作品。可能是因为点子搜索无法验证站点的SSL证书。 我在公司网络中,但是我们不通过代理访问Internet。 每台公司计算机(包括