Python Requests: ප්රොක්සි සහ වෙබ් අඩවිය සඳහා වෙන් වූ Basic පිවිසුම්
ප්රොක්සියේ Basic පිවිසුම එහි URL හරහා ද, ගමනාන්ත වෙබ් අඩවියේ Basic පිවිසුම Requests හි auth තර්කය හරහා ද ලබා දෙන්න.
කාර්යාල ප්රොක්සිය එක් ගිණුමක් ඉල්ලයි. එහි පිටුපස ඇති වෙබ් අඩවිය තවත් එකක් ඉල්ලයි. Requests සතුව එම Basic පිවිසුම් දෙක සඳහා වෙන් වූ ආදාන ඇත: ප්රොක්සි URL තුළ ඇති අක්තපත්ර සහ ඉල්ලීමේ auth තර්කය.
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()
ගිණුම් විචල්ය හතර යෙදුමේ අක්තපත්ර වින්යාසයෙන් එයි. ප්රොක්සි පරිශීලක නාමය සහ මුරපදය වෙන් වශයෙන් කේතනය කිරීම at ලකුණ වැනි අක්ෂර URL බෙදුම්කරුවලට නොපත් කර රඳවා තබයි.
ශබ්දකෝෂයේ https යතුර HTTPS ගමනාන්තයක් සඳහා මෙම මාර්ගය තෝරයි. එහි අගය තවමත් http:// වලින් ආරම්භ වන්නේ මෙම උදාහරණ ප්රොක්සියට ළඟා වීමට භාවිත කරන ප්රොටෝකෝලය එය බැවිනි.
එම HTTPS ඉල්ලීම සඳහා ප්රොක්සි පිවිසුම CONNECT හුවමාරුවට අයත් වේ. වෙබ් අඩවි පිවිසුම ස්ථාපිත උමඟ හරහා යන පසු ඉල්ලීමට අයත් වේ. අනුවර්තකයට තමන්ගේම URL වලින් ප්රොක්සි අවසරය ලබා ගැනීමට ඉඩ දීමෙන් එය අදාළ පියවරේම රැඳේ; මෙම Basic අවස්ථාවට ඒකාබද්ධ සත්යාපන පන්තියක් අවශ්ය නොවේ.
407 අතරමැදියාගේ අභියෝගය දක්වයි. වෙබ් අඩවියෙන් එන 401 ගමනාන්තයේ අභියෝගය දක්වයි. වින්යාස කළ ගිණුම් දෙකෙන් කුමකට අවධානය අවශ්ය දැයි තීරණය කිරීමට එම ප්රතිචාරය භාවිත කරන්න.