Utilice verify
parámetros para ignorar los certificados de CA
Los certificados de CA de algunos sitios web no han sido certificados por una autoridad de certificación raíz confiable, lo que genera un mensaje de error SSL similar a 12306 sitios web que aparece cuando se utiliza un navegador para acceder. (Sitio web 12306 antes de octubre de 2018)
Cuando se utiliza requests
la biblioteca para enviar una solicitud, si el sitio web visitado tiene problemas similares, ssl.CertificateError
se generará una excepción que contiene las palabras.
Ejecute el código para ver el efecto.
Puede ejecutar el siguiente código para intentar acceder a un sitio web con un problema de certificado de CA y se generará una excepción de verificación de certificado:
# 导入requests模块,用于进行HTTP请求
import requests
# 要访问的URL
url = "https://sam.huat.edu.cn:8443/selfservice/"
try:
# 发起GET请求并获取响应
response = requests.get(url)
# 检查响应状态码是否为2xx(表示请求成功)
response.raise_for_status()
except requests.exceptions.RequestException as e:
# 如果发生异常,则打印异常信息
print("发生异常:", e)
solución
Para realizar una solicitud normal en el código verify=False
se pueden utilizar parámetros, en este momento requests
el módulo no verificará el certificado CA al enviar la solicitud:
# 导入requests模块,用于进行HTTP请求
import requests
# 要访问的URL
url = "https://sam.huat.edu.cn:8443/selfservice/"
# 发起GET请求并获取响应,忽略SSL证书验证(verify=False)
response = requests.get(url, verify=False)
Nota: Al requests.get()
agregar verify=False
parámetros en el método, se puede ignorar la verificación del certificado SSL. Esto puede resultar útil en algunos casos, pero tenga en cuenta que puede suponer un riesgo para la seguridad. Utilice este parámetro con precaución y asegúrese de visitar un sitio web confiable.