requests.exceptions.ProxyError ו-urllib3.exceptions.ProxyError הם מחלקות חריגה שונות. שם קצר משותף אינו גורם לסעיף except אחד לתפוס את שתיהן.

בקריאה של Requests, התחילו ב-API הציבורי של חריגות Requests. מתאם התעבורה שלו מתרגם בדרך כלל כשלים ברמה נמוכה יותר לחריגות ש-Requests חושפת. בגרסאות ישנות היו באגי עטיפה מסוימים, לכן שמרו את גרסת הספרייה עם traceback לא צפוי.

בעת החקירה, בדקו את המודול, המחלקה והסיבה המשורשרת של החריגה. MaxRetryError מקונן או כשל חיבור עשויים לשמור ראיות שימושיות על שלב ה-proxy הקודם.

הימנעו מייבוא נתיב vendored ישן מפתרון היסטורי לאפליקציה מודרנית. תפסו את החריגה הציבורית המתאימה לקריאה הנוכחית, שמרו את הסיבה לאבחון, והחליטו על התנהגות ניסיון חוזר בנפרד. תפיסת כל Exception והמשך לנצח רק מסתירים את אי-ההתאמה המקורית.

מאמרים קשורים