Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana Mengendalikan Ralat dengan Anggun Apabila Menggunakan Modul Permintaan Python?

Bagaimana Mengendalikan Ralat dengan Anggun Apabila Menggunakan Modul Permintaan Python?

DDD
DDDasal
2024-11-12 11:54:02478semak imbas

How to Handle Errors Gracefully When Using Python's Requests Module?

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn