크롤링 에러처리 관련..

secudent의 이미지

python requests, beautifulsoup를 사용하고 있습니다.

크롤링 대상 사이트 내에 50만 페이지 정도가 있다고 가정할 때
도중에 Connection이 끊어지는 경우가 있는데 (ResetConnection) 등등..

보통 이 에러처리를 어떻게 해결하시는 편이 좋을까요? 현재는 그냥 Print만 합니다.
(저는 에러로 끊겨도 계속 연결을 시도하고 싶습니다.)

현재 코드는 이러합니다. 그리고 time_out을 설정하지 않았는데 설정 하고 안하고의 차이가 궁금합니다.

                try:
                        req = requests.get(url, headers=get_headers())
                        soup = BeautifulSoup(req.content, 'lxml')
                        req.close()
                        return soup
                except requests.ConnectionError as e:
                    print("OOPS!! Connection Error. Make sure you are connected to Internet. Technical Details given below.\n")
                    print(str(e))
                except requests.Timeout as e:
                    print("OOPS!! Timeout Error")
                    print(str(e))
                except requests.RequestException as e:
                    print("OOPS!! General Error")
                    print(str(e))
                except KeyboardInterrupt:
                    print("Someone closed the program")