Melog masuk ke Laman Web dengan Permintaan Python: Kuki dan Keizinan HTTP
Masalah:
Pengguna tidak dapat log masuk ke tapak web menggunakan modul Permintaan Python kerana masalah pengendalian kuki. Kod ini menggunakan requests.post tetapi menghasilkan hasil yang salah.
Penyelesaian:
Keizinan HTTP lwn. Cookies
Keizinan HTTP melibatkan penghantaran bukti kelayakan pengguna secara langsung sebagai sebahagian daripada pengepala HTTP. Sebaliknya, kuki membenarkan pelayan mengekalkan keadaan dengan menyimpan maklumat pada komputer pelanggan.
Penggunaan Kuki yang Betul
Dalam kod yang disediakan, pengguna mencipta kamus dipanggil ck dan lulus sebagai hujah kepada requests.post. Bagaimanapun, kamus ini hendaklah diluluskan sebagai parameter data sebaliknya.
Kod Dibetulkan
ck = {'inUserName': 'USERNAME/EMAIL', 'inUserPass': 'PASSWORD'} r = requests.post(url, data=ck)
Mengekalkan Status Log Masuk
Untuk kekal log masuk untuk tempoh yang panjang, sesi web mesti dikekalkan. Ini boleh dicapai menggunakan permintaan.Kelas sesi. Secara lalai, Permintaan mencipta contoh sesi baharu untuk setiap permintaan.
Kod Cadangan Menggunakan Sesi
with requests.Session() as session: login_data = {'inUserName': 'USERNAME/EMAIL', 'inUserPass': 'PASSWORD'} response = session.post(url, data=login_data) # Check login status. If successful, make subsequent requests using the same session if response.status_code == 200: safe_response = session.get('protected_url') print(safe_response.text)
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Berjaya Log masuk ke Laman Web Menggunakan Modul Permintaan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!