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 இலக்கின் சவாலைக் குறிக்கிறது. அமைக்கப்பட்ட இரண்டு கணக்குகளில் எதற்கு கவனம் தேவை என்பதை முடிவு செய்ய அந்த பதிலைப் பயன்படுத்துங்கள்.