एका Python urllib ओपनरमध्ये कुकीज आणि प्रॉक्सी वापरा
एका urllib ओपनरवर ProxyHandler आणि HTTPCookieProcessor एकत्र करा जेणेकरून संबंधित प्रॉक्सी विनंत्या इच्छित कुकी जार सामायिक करतील.
urllib ओपनर विनंत्या प्रॉक्सीमधून पाठवू शकतो आणि त्याच वेळी वेबसाइटच्या कुकीज ठेवू शकतो. त्याला दोन्ही हँडलर द्या:
from http.cookiejar import CookieJar
from urllib.request import (
HTTPCookieProcessor, ProxyHandler, build_opener,
)
cookies = CookieJar()
opener = build_opener(
ProxyHandler({"http": "http://proxy.example:8080"}),
HTTPCookieProcessor(cookies),
)
with opener.open("http://www.example.com/", timeout=10) as response:
body = response.read()उदाहरण साधे HTTP लक्ष्य आणि त्याचा स्पष्ट प्रॉक्सी मार्ग वापरते. प्रॉक्सी प्रमाणीकरणाशिवाय परवानगी असलेल्या सार्वजनिक साइटच्या तपासणीसाठी त्या मार्गासाठी HTTP प्रॉक्सी सूचीमधून उमेदवार निवडा आणि इच्छित कुकी जार ठेवा. त्याच वेबसाइट सत्रातील पुढील विनंत्याांसाठी opener पुन्हा वापरा. कुकी प्रोसेसर स्वीकारार्ह प्रतिसाद कुकीज काढतो आणि लागू असलेल्या पुढील विनंत्याांमध्ये जोडतो.
प्रत्येक कॉलपूर्वी नवीन रिकामी CookieJar तयार केल्यास ती सातत्य टिकत नाही. जार ते प्रतिनिधित्व करते त्या सत्रासोबत ठेवा; ज्यांच्या कुकीज वेगळ्या राहिल्या पाहिजेत अशा खात्यांसाठी किंवा कार्यप्रवाहांसाठी वेगळ्या जार वापरा.
सामान्य CookieJar स्थिती मेमरीत ठेवते. प्रोग्राम रनमधील टिकाऊपणासाठी योग्य FileCookieJar उपवर्ग निवडा आणि तो जाणीवपूर्वक जतन करा किंवा लोड करा.
या व्यवस्थेसाठी जागतिक opener स्थापित करण्याची गरज नाही. या ऑब्जेक्टची open पद्धत कॉल केल्यास प्रॉक्सी आणि कुकीज एकाच क्रियेशी जोडलेले राहतात.