Python Requests: proksi va sayt uchun alohida Basic kirishlar
Proksining Basic kirishini uning URL orqali, manzil saytning Basic kirishini esa Requests'ning auth argumenti orqali yuboring.
Ofis proksisi bitta hisob talab qiladi. Uning orqasidagi sayt boshqasini talab qiladi. Requests'da bu ikki Basic kirish uchun alohida kiritish maydonlari bor: proksi URL'idagi hisob ma'lumotlari va so'rovning auth argumenti.
from urllib.parse import quote
import requests
proxy_url = (
f"http://{quote(proxy_user, safe='')}:"
f"{quote(proxy_password, safe='')}@proxy.example:8080"
)
response = requests.get(
"https://reports.example/private/",
proxies={"https": proxy_url},
auth=(site_user, site_password),
timeout=(5, 20),
)
response.raise_for_status()
To'rtta hisob o'zgaruvchisi ilovaning hisob ma'lumotlari konfiguratsiyasidan olinadi. Proksi foydalanuvchi nomi va parolini alohida kodlash at belgisi kabi belgilarni URL ajratgichlariga aylantirmasdan saqlaydi.
Lug'atdagi https kaliti HTTPS manzili uchun shu yo'lni tanlaydi. Uning qiymati hanuz http:// bilan boshlanadi, chunki bu misol proksisiga yetib borish uchun ishlatiladigan protokol shu.
O'sha HTTPS so'rovida proksi kirishi CONNECT almashinuviga tegishli. Sayt kirishi o'rnatilgan tunnel orqali o'tadigan keyingi so'rovga tegishli. Adapter proksi avtorizatsiyasini o'z URL'idan olib chiqsa, u tegishli qadamda qoladi; bu Basic holat uchun birlashtirilgan autentifikatsiya klassi kerak emas.
407 vositachining chaqirig'ini bildiradi. Saytdan kelgan 401 manzilning chaqirig'ini bildiradi. Sozlangan ikki hisobdan qaysi biriga e'tibor kerakligini aniqlash uchun o'sha javobdan foydalaning.