ProxyError Requests versus ProxyError urllib3
Tangkap pengecualian dari pustaka HTTP yang benar-benar dipakai panggilan itu dan telusuri rantai penyebabnya; nama kelas saja tidak menjelaskan semuanya.
requests.exceptions.ProxyError dan urllib3.exceptions.ProxyError adalah kelas pengecualian yang berbeda. Nama pendek yang sama tidak membuat satu klausa except menangkap keduanya.
Untuk panggilan Requests, mulailah dari API pengecualian Requests yang publik. Adaptor transportnya biasanya menerjemahkan kegagalan tingkat bawah menjadi pengecualian yang ditampilkan Requests. Versi lama memiliki bug pembungkusan tertentu, jadi simpan versi pustaka saat melihat traceback tak terduga.
Saat menyelidiki, periksa modul, kelas, dan penyebab berantai dari pengecualian. MaxRetryError bersarang atau kegagalan koneksi dapat menyimpan bukti berguna tentang tahap proxy sebelumnya.
Hindari mengimpor jalur vendored lama dari solusi historis ke aplikasi modern. Tangkap pengecualian publik yang sesuai dengan panggilan saat ini, pertahankan penyebabnya untuk diagnosis, dan putuskan perilaku percobaan ulang secara terpisah. Menangkap setiap Exception dan terus berjalan selamanya hanya menyembunyikan ketidakcocokan awal.