Was ist der Unterschied zwischen einem Timeout von URLError und einem TimeoutError?Python

Python-Programme
Anonymous
 Was ist der Unterschied zwischen einem Timeout von URLError und einem TimeoutError?

Post by Anonymous »

Das ist mein Python3-Code:

Code: Select all

try:
with urllib.request.urlopen(myURL, timeout=1.0) as page:
response = page.read().strip().decode("UTF-8",errors='replace')
except TimeoutError as e:
print(f"TimeoutError  '{e}'")
except urllib.error.URLError as e:
print(f"URLError '{e.reason}'")
Ich habe also ein einzelnes Timeout von 1,0 Sekunden definiert, aber manchmal wird der „urlError“ ausgelöst und manchmal der „TimeoutError“:

Code: Select all

ERR: 1002 ms  URLError 'timed out'
ERR: 1022 ms  TimeoutError  'timed out'
Und während „URLError“ immer nicht weiter als ein paar ms von 1,0 Sek. entfernt ist, ist der „TimeoutError“ ganz anders und liegt immer einen guten Teil (20 ... 100 ms) über der 1,0 Sek.
Was ist für das Auslösen eines der beiden Timeouts verantwortlich und warum ist TimeoutError immer deutlich höher als der eingestellte Wert?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post