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)'))