Mengendalikan Pengecualian dengan Modul Permintaan Python
Menangkap pengecualian apabila membuat permintaan HTTP adalah penting untuk pengendalian ralat yang mantap. Walaupun coretan kod yang disediakan boleh mengendalikan beberapa ralat berkaitan sambungan, ia terlepas isu berpotensi lain.
Menurut dokumentasi Permintaan, jenis pengecualian berbeza dibangkitkan untuk:
Semua pengecualian ini diwarisi daripada requests.exceptions.RequestException.
Untuk meliputi semua asas, anda boleh:
try: r = requests.get(url, params={'s': thing}) except requests.exceptions.RequestException as e: # Handle all cases raise SystemExit(e)
try: r = requests.get(url, params={'s': thing}) except requests.exceptions.Timeout: # Implement a retry strategy except requests.exceptions.TooManyRedirects: # Notify user of incorrect URL except requests.exceptions.RequestException as e: # Catastrophic error, terminate raise SystemExit(e)
Mengendalikan Ralat HTTP:
Jika anda perlu mengemukakan pengecualian untuk kod status HTTP (cth., 401 Tanpa Kebenaran), hubungi Respons .raise_for_status selepas membuat permintaan.
try: r = requests.get('http://www.google.com/nothere') r.raise_for_status() except requests.exceptions.HTTPError as err: raise SystemExit(err)
Dengan mempertimbangkan semua jenis pengecualian yang mungkin dan menyesuaikan strategi pengendalian ralat anda, anda boleh memastikan aplikasi anda mengendalikan isu rangkaian dengan anggun dan memberikan respons yang sesuai kepada pengguna.
Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Mengendalikan Semua Pengecualian yang Berkemungkinan Apabila Menggunakan Modul Permintaan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!