데이터 수집을 하는 도중에 아래와 같은 에러가 발생했다..
Connection aborted.', RemoteDisconnected('Remote end closed connection without response')
처음보는 error여서 debugging한 결과 requests 라이브러리를 활용하는 과정에서 생긴 오류였다.
오류 코드: requests.get(url, params=params)
정확하게는 모르겠지만 프록시 서버에 접속 요청을 보낼 때 생기는 것으로 추정된다.
requests.get 함수의 파라미터인 headers에 random한 user-agent값을 보내면 정상적으로 실행된다!
from fake_useragent import UserAgent
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
user_agent = UserAgent()
headers = {'User-Agent': user_agent.random}
response = requests.get(url, params=params, headers=headers)
위 코드 실행 시, 문제없이 진행되지만 random한 user-agent값을 설정하는 과정(user_agent = UserAgent())에서 IndexError가 fake_useragent라이브러리 내부에서 발생된다. (코드는 무시하고 진행됨)
위 문제의 경우 fake_useragent/utils.py의 코드를 수정하면 된다.
html = html.split('<table class="w3-table-all notranslate">')[1]
→ html = html.split('<table class="ws-table-all notranslate">')[1]
감사합니다 덕분에 잘 해결했습니다. :-)