파이썬에서 request를 할때 SSL 에러가 발생하는데요.
아래와 같이 certificate verify failed라는 메시지가 발생합니다.
Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')])")))
말 그대로 SSL 인증서가 오류가 있어서 인증이 되지 않는 케이스입니다.
이 경우 크게 2가지 방법으로 처리가 가능한데요.
ssl 인증서 예외처리
먼저 SSL에서 인증서를 예외처리하는 방식으로 처리할 수 있습니다.
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
위의 형태와 아래처럼 에러가 나타났을때 _create_unverified_context에 대해서만 if 문으로 처리하는 방법도 있습니다.
전체를 처리하는 방법보다는 에러가 나타났을때만 예외처리해서 문제를 최소화할수 있습니다.
if hasattr (ssl, '_create_unverified_context') :
ssl._create_default_https_context = ssl._create_unverified_context
Request 예외처리
import requests
response = requests.get(url, verify=False)
다만 이경우 에러 메시지가 발생하는데요.
에러를 없애기 위해서는 아래와 같은 메시지를 추가해줘야 합니다.
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
간단하게 하려면
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
그러면 이 문제를 잘 해결하시기 바랍니다.
'Programming > Python' 카테고리의 다른 글
파이썬 입력 받아서 폴더 만들고 저장하기 (0) | 2024.02.14 |
---|---|
파이썬 전체 패키지 pip로 한번에 업데이트 하기 (0) | 2024.01.23 |
openpyxl.utils.exceptions.IllegalCharacterError 해결하기 (1) | 2023.11.27 |
ubuntu python3 최신버전 설치하는 방법 (1) | 2023.11.15 |
파이썬 크롤링 에러 - Connection aborted.', RemoteDisconnected('Remote end closed connection without response (21) | 2023.10.19 |