You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Requests爬虫时如何访问网站证书?解决Python 3 SSLError问题

解决Requests爬取esaj.tjsp.jus.br时的SSLError问题

遇到这个SSL错误,通常是因为Requests无法验证目标网站的SSL证书导致的。下面给你几种可行的解决办法,按安全推荐程度排序:

1. 更新CA证书存储(最安全推荐)

有时候本地系统的CA证书库过时,导致无法识别网站的合法证书。你可以用certifi库提供的最新CA证书来解决:

首先安装certifi:

pip install certifi

然后修改你的代码,指定使用certifi的证书:

from bs4 import BeautifulSoup
import requests
import certifi

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
}

res = requests.get(
    'https://esaj.tjsp.jus.br/cposg/search.do?conversationId=&paginaConsulta=1&localPesquisa.cdLocal=-1&cbPesquisa=NMPARTE&tipoNuProcesso=UNIFICADO&dePesquisa=Alex+Spinelli+Manente&chNmCompleto=true&uuidCaptcha=',
    headers=headers,
    verify=certifi.where()
)

2. 手动指定网站证书

如果你想更精准,也可以直接导出目标网站的证书,让Requests用它来验证:

  • 打开浏览器访问目标网站,点击地址栏的锁形图标 → 查看证书 → 导出证书为PEM格式(注意选择Base64编码的X.509格式)
  • 把导出的证书文件放到你的项目目录里,然后在代码里指定路径:
from bs4 import BeautifulSoup
import requests

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
}

res = requests.get(
    'https://esaj.tjsp.jus.br/cposg/search.do?conversationId=&paginaConsulta=1&localPesquisa.cdLocal=-1&cbPesquisa=NMPARTE&tipoNuProcesso=UNIFICADO&dePesquisa=Alex+Spinelli+Manente&chNmCompleto=true&uuidCaptcha=',
    headers=headers,
    verify='./esaj_certificate.pem'  # 替换成你的证书文件路径
)

3. 临时跳过证书验证(仅测试用,不推荐生产环境)

如果你只是临时测试,不想折腾证书,可以直接关闭SSL验证,但这会带来安全风险(可能遭遇中间人攻击):

from bs4 import BeautifulSoup
import requests
from requests.packages.urllib3.exceptions import InsecureRequestWarning

# 关闭不安全请求的警告
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
}

res = requests.get(
    'https://esaj.tjsp.jus.br/cposg/search.do?conversationId=&paginaConsulta=1&localPesquisa.cdLocal=-1&cbPesquisa=NMPARTE&tipoNuProcesso=UNIFICADO&dePesquisa=Alex+Spinelli+Manente&chNmCompleto=true&uuidCaptcha=',
    headers=headers,
    verify=False
)

另外提一句:很多政府网站有反爬机制,加上User-Agent模拟浏览器请求,能减少被拦截的概率,上面的代码里都加了这个配置。

内容的提问来源于stack exchange,提问作者Reinaldo Chaves

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:28:36