Rumah > Artikel > pembangunan bahagian belakang > Mengapa Saya Mendapat Ralat \"403 Dilarang\" Semasa Membuat Panggilan API Permintaan Python?
Menyelesaikan masalah "403 Forbidden" Ralat dalam Python Requests API Calls
Apabila cuba mengekstrak data daripada tapak web menggunakan modul permintaan Python, ia bukan jarang ditemui ralat "403 Dilarang". Ralat ini menunjukkan bahawa pelayan enggan memenuhi permintaan kerana sekatan akses.
Pertimbangkan coretan kod berikut:
<code class="python">import requests url = 'http://worldagnetwork.com/' result = requests.get(url) print(result.content.decode())</code>
Apabila dilaksanakan, kod ini mungkin mengembalikan ralat berikut:
<html> <head><title>403 Forbidden</title></head> <body bgcolor="white"> <center><h1>403 Forbidden</h1></center> <hr><center>nginx</center> </body> </html>
Isu dalam kes ini timbul daripada fakta bahawa tapak web menolak permintaan GET yang tidak mempunyai pengepala Ejen Pengguna yang betul. Dengan melawati halaman dalam penyemak imbas (cth., Chrome) dan memeriksa trafik rangkaian, kami boleh menentukan Ejen Pengguna yang digunakan oleh penyemak imbas.
Untuk menyelesaikan ralat, kami perlu menambah pengepala Ejen Pengguna kepada permintaan kami, hubungi:
<code class="python">import requests url = 'http://worldagnetwork.com/' headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36'} result = requests.get(url, headers=headers) print(result.content.decode())</code>
Dengan pengepala Ejen Pengguna ditambah, permintaan itu kini seharusnya berjaya menghuraikan kandungan HTML tapak web.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat \"403 Dilarang\" Semasa Membuat Panggilan API Permintaan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!