def load(site): req = urllib.request.Request(site, headers={'User-Agent': 'Firefox'}) with urllib.request.urlopen(req) as data: charset = data.headers.get_charsets()[0] text = data.read().decode(charset or 'latin1') #print (text) return text def get_site(site, timeout): text = None while True: try: text = load(site) break except TimeoutError: print ("Error network") time.sleep(timeout) return text
Но, если сеть обрывается, небольшое зависание, и вываливает лог ошибки с резюме:
urllib.error.URLError: <urlopen error EOF occurred in violation of protocol (_ssl.c:749)>
Интересно, как реализовывать что-бы программа не вываливалась?