Menangkap Ralat dengan Modul Permintaan Python
Apabila menggunakan modul permintaan untuk membuat permintaan HTTP, adalah penting untuk mengendalikan ralat dengan bijak. Struktur try/except membolehkan anda menangkap ralat dan bertindak balas dengan sewajarnya.
Penggunaan try/except yang Betul
Contoh yang disediakan menggunakan try/except untuk menangkap permintaan.ConnectionError betul tetapi terhad. Walaupun ia akan menangkap isu berkaitan rangkaian, ia tidak akan meliputi jenis ralat lain seperti tamat masa atau terlalu banyak ubah hala.
Meliputi Semua Pengecualian
Untuk menangkap semua permintaan- ralat yang berkaitan, anda boleh menggunakan pengecualian kelas asas requests.exceptions.RequestException:
try: r = requests.get(url, params={'s': thing}) except requests.exceptions.RequestException as e: # Handle the error accordingly
Mengendalikan Ralat Khusus
Sebagai alternatif, anda boleh menangkap jenis ralat tertentu secara berasingan:
try: r = requests.get(url, params={'s': thing}) except requests.exceptions.Timeout: # Retry or continue in a retry loop except requests.exceptions.TooManyRedirects: # Prompt the user to correct the URL except requests.exceptions.RequestException as e: # Handle catastrophic errors
Menangkap Ralat HTTP
Jika anda mahu untuk menimbulkan pengecualian bagi kod ralat HTTP (cth., 401 Unauthorized), panggil Response.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: # Handle the HTTP error
Dengan melaksanakan pengendalian ralat yang betul, anda memastikan skrip/program anda boleh bertindak balas dengan berkesan terhadap ralat berbeza yang dihadapi semasa permintaan HTTP.
Atas ialah kandungan terperinci Bagaimana Mengendalikan Ralat dengan Anggun Apabila Menggunakan Modul Permintaan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!