Python Requests-ல் பிராக்ஸியை எவ்வாறு பயன்படுத்துவது (HTTP/HTTPS & Session பூலிங்)
Updated:
Python-இன் requests லைப்ரரி, 'http' மற்றும் 'https' ஆகிய இரண்டு திட்டங்களையும் http://user:pass@ip:port-க்கு மேப்பிங் செய்யும் proxies டிக்ஷனரி மூலம் அங்கீகரிக்கப்பட்ட VinaProxy பிராக்ஸிகளை ஏற்கிறது. அந்த டிக்ஷனரியை ஒரு நிலையான requests.Session()-உடன் இணைப்பது, வேகமான மற்றும் குறைந்த தாமத வலை ஸ்கிராப்பிங்கிற்காக அடிப்படை TCP சாக்கெட்டுகளை மீண்டும் பயன்படுத்துகிறது.
proxies = {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}- 1 IP₫40,000
- 5+ IP-கள்₫35,000
- 10+ IP-கள்₫25,000
- 20+ IP-கள்₫25,000
- 50+ IP-கள்₫25,000
- 100+ IP-கள்₫25,000
- 200+ IP-கள்₫25,000
- 500+ IP-கள்₫25,000
- 1000+ IP-கள்₫22,000
- 2000+ IP-கள்₫20,000
- 1 IP₫40,000
- 5+ IP-கள்₫35,000
- 10+ IP-கள்₫25,000
- 20+ IP-கள்₫25,000
- 50+ IP-கள்₫25,000
- 100+ IP-கள்₫25,000
- 200+ IP-கள்₫25,000
- 500+ IP-கள்₫25,000
- 1000+ IP-கள்₫22,000
- 2000+ IP-கள்₫20,000
proxies டிக்ஷனரியை வடிவமைத்தல் & Sessions-ஐ மீண்டும் பயன்படுத்துதல்
ஒவ்வொரு URL-லும் requests.get()-ஐ அழைப்பது ஒவ்வொரு முறையும் ஒரு புத்தம் புதிய TCP இணைப்பு மற்றும் TLS ஹேண்ட்ஷேக்கை உருவாக்குகிறது. உங்கள் பிராக்ஸியை session = requests.Session()-உடன் பிணைப்பது அடுத்தடுத்த கோரிக்கைகள் முழுவதும் பிராக்ஸி டன்னலைத் திறந்து வைத்திருக்கும்.
| Requests அளவுரு | பரிந்துரைக்கப்பட்ட தொடரியல் | தொழில்நுட்ப நோக்கம் |
|---|---|---|
'http' key | 'http://user:pass@ip:port' | சாதாரண HTTP கோரிக்கைகளை பிராக்ஸி வழியாக அனுப்புகிறது |
'https' key | 'http://user:pass@ip:port' | http:// திட்டத்தைப் பயன்படுத்துகிறது, எனவே urllib3 TLS-க்காக ஒரு HTTP CONNECT டன்னலை உருவாக்குகிறது |
timeout tuple | timeout=(5, 15) | 5s இணைப்பு காலாவதி மற்றும் 15s வாசிப்பு காலாவதி ஆகியவை பணிகளை முடங்காமல் தடுக்கின்றன |
| Pool rotation | itertools.cycle(proxy_list) | உங்கள் பிரத்யேக நிலையான IP பூல் முழுவதும் சமமாகச் சுழற்றுகிறது |
பொதுவான urllib3 & ProxyError தவறுகளைத் தவிர்த்தல்
- உங்கள் பிராக்ஸி போர்ட்டிற்கு வெளிப்படையாக TLS-over-TLS தேவைப்படாவிட்டால்,
'http'மற்றும்'https'ஆகிய இரண்டு டிக்ஷனரி விசைகளுக்கும் பிராக்ஸி URL திட்டமாக எப்போதும்http://-ஐப் (மற்றும்https://அல்ல) பயன்படுத்தவும் urllib.parse.quote(password, safe='')-ஐப் பயன்படுத்தி கடவுச்சொற்களில் உள்ள சிறப்பு எழுத்துக்களை URL-encode செய்யவும்407 Proxy Authentication Requiredபிழை என்பது உங்கள் URL சரத்தில் உள்ள பயனர்பெயர் அல்லது கடவுச்சொல் உங்கள் டாஷ்போர்டு சான்றுகளுடன் பொருந்தவில்லை என்பதைக் குறிக்கிறதுhttpx.Client(proxy='http://user:pass@ip:port')மற்றும்aiohttpsession.get(url, proxy=...)ஆகியவற்றுடனும் ஒரே மாதிரியாகச் செயல்படுகிறது
படிப்படியாக
- 1
ip:port:user:pass-ஐ URL தொடரியலாக மாற்றவும்
உங்கள் VinaProxy பட்டியலை
http://user:pass@ip:portசரங்களாக மாற்ற எங்கள் Proxy Format Converter-ஐப் பயன்படுத்தவும். - 2
proxies டிக்ஷனரியை வரையறுக்கவும்
உங்கள் Python ஸ்கிரிப்ட்டில்
proxies = {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}என அமைக்கவும். - 3
requests.Session() நிகழ்வுடன் இணைக்கவும்
நிலையான
Keep-Aliveபூலிங்கிற்குs = requests.Session()-ஐத் தொடங்கிs.proxies.update(proxies)-ஐ அழைக்கவும். - 4
சோதனைக் கோரிக்கை மூலம் வெளியேறும் IP-ஐச் சரிபார்க்கவும்
செயலில் உள்ள பிராக்ஸி IP-ஐ உறுதிப்படுத்த
print(s.get('https://vinaproxy.com/api/my-ip', timeout=10).json())-ஐ இயக்கவும்.
அடிக்கடி கேட்கப்படும் கேள்விகள்
'https' விசை ஏன் 'http://user:pass@ip:port'-ஐப் பயன்படுத்துகிறது?
http:// முன்னொட்டானது பிராக்ஸி சேவையகத்துடன் எவ்வாறு இணைப்பது என்பதை urllib3-க்குக் கூறுகிறது (நிலையான HTTP CONNECT ஐப் பயன்படுத்தி), அதே நேரத்தில் இலக்கு https:// வலைத்தளத்திற்கான உங்கள் முழுமையான டிராஃபிக் முழுமையாக TLS-மறைகுறியாக்கப்பட்டதாகவே இருக்கும்.
Python-இல் கோரிக்கைகளிடையே 25 நிலையான பிராக்ஸிகளை எவ்வாறு சுழற்றுவது?
உங்கள் 25 பிராக்ஸி URL-களை pool = itertools.cycle(PROXIES)-இல் ஏற்றி, ஒவ்வொரு IP-க்கும் மிதமான வரம்பு வீதத்துடன் ஒவ்வொரு கோரிக்கைக்கும் proxies={'http': p, 'https': p} என அனுப்பவும்.
Python ஸ்கிராப்பிங் ஸ்கிரிப்ட்களில் VinaProxy அலைவரிசையைக் கணக்கிடுகிறதா?
இல்லை. அனைத்து Dedicated IPv4 மற்றும் Static ISP திட்டங்களிலும் வரம்பற்ற மாதாந்திர டிராஃபிக் அடங்கும்.
வரம்பற்ற Python ஸ்கிராப்பிங் பூலை உருவாக்குங்கள்
7 நாடுகளில் உடனடி Dedicated IPv4 மற்றும் Static ISP பிராக்ஸிகள்.
Python பிராக்ஸிகளை வாங்கவும்