Permintaan - Bekerja dengan Kesalahan

Bab ini akan membahas bagaimana menangani kesalahan yang datang saat bekerja dengan pustaka permintaan Http. Itu selalu merupakan praktik yang baik untuk memiliki kesalahan yang dikelola untuk semua kasus yang memungkinkan.

Pengecualian Kesalahan

Modul permintaan memberikan jenis pengecualian kesalahan berikut -

ConnectionError- Ini akan dimunculkan, jika ada kesalahan koneksi. Misalnya, jaringan gagal, kesalahan DNS sehingga perpustakaan Permintaan akan memunculkan pengecualian ConnectionError.

Response.raise_for_status() - Berdasarkan kode status yaitu 401, 404 itu akan memunculkan HTTPError untuk url yang diminta.

HTTPError - Kesalahan ini akan dimunculkan untuk respons tidak valid yang turun untuk permintaan yang dibuat.

Timeout - Kesalahan muncul karena waktu tunggu untuk URL yang diminta.

TooManyRedirects - Jika batasnya dilintasi untuk pengalihan maksimum daripada itu akan menimbulkan kesalahan TooManyRedirects.

Contoh

Berikut adalah contoh kesalahan yang ditampilkan untuk waktu tunggu -

import requests
getdata = 
requests.get('https://jsonplaceholder.typicode.com/users',timeout=0.001)
print(getdata.text)

Keluaran

raise ConnectTimeout(e, request=request)
requests.exceptions.ConnectTimeout:
HTTPSConnectionPool(host='jsonplaceholder.ty
picode.com', port=443): Max retries exceeded with url: /users (Caused
by Connect
TimeoutError(<urllib3.connection.VerifiedHTTPSConnection object at
0x000000B02AD
E76A0>, 'Connection to jsonplaceholder.typicode.com timed out. (connect 
timeout = 0.001)'))