Python Requests के साथ प्रॉक्सी का उपयोग करना

टिप्पणियाँ: 0

संक्षेप में, प्रॉक्सी ऐसे सर्वर हैं जो नेटवर्क सेवाओं से जुड़ने वाली बाहरी परत के रूप में काम करते हैं। वे एक कंप्यूटर और उस साइट के लिए मध्य-पुरुषों के रूप में सेवा करते हैं, जहां से एक उपयोगकर्ता जानकारी निकालना चाहता है। उपयोगकर्ता के अनुरोध, सीधे संबंधित साइट पर भेजे जाने के बजाय, पहले प्रॉक्सी को निर्देशित किया जाता है जो तब इसे अंतिम सर्वर पर भेजता है। इसलिए, प्रॉक्सी सर्वर का आईपी पता वह है जिसे साइट उपयोगकर्ता के बजाय बचाती है।

तो, एक प्रॉक्सी का उपयोग क्यों करें?

  • गुमनामी:

उदाहरण के लिए, यदि प्रतिबंध या ब्लॉकों के डर के बिना किसी साइट से जानकारी एकत्र करने की आवश्यकता है। एक प्रॉक्सी वास्तविक उपयोगकर्ता के आईपी पते को उनकी वास्तविक डिजिटल पहचान को बदलने में मदद करता है।

  • प्रतिबंधों को दरकिनार करना:

एक विशिष्ट देश से एक प्रॉक्सी जहां कोई प्रतिबंध नहीं है, का उपयोग नहीं किया जा सकता है। ऐसा इसलिए है, क्योंकि कुछ देशों में, कुछ कार्यक्रमों और वेबसाइटों तक पहुंच सीमित या अवरुद्ध है।

  • भार का संतुलन:

यदि किसी विशेष साइट पर बड़ी संख्या में अनुरोध भेजे जाते हैं, तो संभावना है कि सिस्टम लोड किया जाएगा। नतीजतन, अवरुद्ध होने का एक बड़ा जोखिम है। एक ही समय में कई प्रॉक्सी का उपयोग करना उपयोगकर्ताओं को विशेष साइट पर अनुरोधों को समान रूप से वितरित करने की अनुमति देता है, इसलिए रुकावट से बचता है।

Python Requests सेटअप और इंस्टालेशन

Requests Python का उपयोग करके HTTP अनुरोध भेजने के लिए लाइब्रेरी है। यह GET और POST अनुरोध करना सरल बनाता है। बिना प्रॉक्सी के Python Requests का उपयोग HTTP अनुरोध भेज सकता है, लेकिन यह गुमनामीता या प्रतिबंधों को दरकिनार नहीं करता है।

1. Requests लाइब्रेरी को इंस्टॉल करना

Requests इंस्टॉल करने के लिए, बस टर्मिनल में नीचे दिया गया कमांड दर्ज करें:


pip install requests

2. इंस्टालेशन का सत्यापन करना

यह सत्यापित करने के लिए कि आवश्यक लाइब्रेरी ठीक से सेट की गई है, आपको Python विकास वातावरण खोलने और कमांड चलाने की आवश्यकता है:


import requests 

print(requests.__version__)

यदि सब कुछ सही ढंग से किया गया है, तो स्क्रिप्ट संस्करण संख्या लौटाएगी।

Python Requests के साथ प्रॉक्सी का उपयोग कैसे करें

एक बार जब हम requests लाइब्रेरी इंस्टॉल कर लेते हैं, तो हम HTTP अनुरोध निष्पादित करना शुरू कर सकते हैं। हालांकि, प्रॉक्सी को शामिल करने के लिए, Python में कुछ विन्यास किए जाने चाहिए।

आइए Python में अनुरोधों के लिए प्रॉक्सी को सही ढंग से कॉन्फ़िगर करने के लिए पालन करने के चरणों की जांच करें। हम SOCKS प्रॉक्सी के साथ Python Requests विन्यासों पर अलग से विचार करेंगे।

1. प्रॉक्सी सर्वर का कॉन्फ़िगरेशन

Python का उपयोग करके प्रॉक्सी सेट करना requests लाइब्रेरी का उपयोग करने वाले उपयोगकर्ताओं के लिए बहुत आसान है। इसके लिए प्रॉक्सी सर्वर के पते को एक डिक्शनरी में पास करना और फिर HTTP अनुरोध करते समय उपयोग करना आवश्यक है।


proxies = {
    "http": "http://your-proxy-ip:port",
    "https": "http://your-proxy-ip:port",
}

response = requests.get("http://example.com", proxies=proxies)

2. प्रॉक्सी प्रमाणीकरण

Python Requests का उपयोग करते समय, प्रॉक्सी प्रमाणीकरण सेट करना आसान है। आइए विवरण पर एक करीबी नज़र डालें।


proxies = { 
    "http": "http://username:password@your-proxy-ip:port", 
    "https": "http://username:password@your-proxy-ip:port", 
} 

response = requests.get("http://example.com", proxies=proxies)

दो नए फ़ील्ड जिन्हें भरने की आवश्यकता है वे हैं:

  • username – प्रॉक्सी उपयोगकर्ता नाम;
  • password – प्रॉक्सी पासवर्ड।

3. SOCKS प्रॉक्सी का उपयोग करना

उन उपयोगकर्ताओं के लिए जिन्हें उच्च स्तर की गुमनामीता की आवश्यकता होती है, या यदि आप भारी प्रतिबंधित साइटों के साथ काम कर रहे हैं, मानक HTTP प्रॉक्सी काम नहीं कर सकते हैं। इस मामले में, SOCKS प्रॉक्सी बेहतर हो सकते हैं।

SOCKS प्रॉक्सी समर्थन को सक्षम करने के लिए, नीचे सूचीबद्ध कमांड का उपयोग करके एक अतिरिक्त लाइब्रेरी को इंस्टॉल करने की आवश्यकता है:


pip install requests[socks]

एक बार जब यह इंस्टॉल हो जाता है, Python Requests आपको SOCKS प्रॉक्सी सेट करने की अनुमति देता है जिसका उपयोग नीचे दिए गए उदाहरण में दिखाया गया है।


import requests

proxies = {
    "http": "socks5h://your-proxy-ip:port",
    "https": "socks5h://your-proxy-ip:port",
}

response = requests.get("http://example.com", proxies=proxies)

यदि प्रॉक्सी सर्वर को प्रमाणीकरण की आवश्यकता है, तो उन्हें नीचे दिखाए अनुसार शामिल करें।


proxies = {
    "http": "socks5h://username:password@your-proxy-ip:port",
    "https": "socks5h://username:password@your-proxy-ip:port",
}

Python Requests में प्रॉक्सी के साथ सत्रों का प्रबंधन

जब एक ही प्रॉक्सी के माध्यम से कई अनुरोध किए जा रहे हों, तो प्रत्येक अनुरोध में इसे जोड़ने के बजाय, प्रॉक्सी के साथ Python Requests सत्रों का उपयोग करना अधिक कुशल हो जाता है।

प्रॉक्सी का उपयोग करने का यह तरीका सभी सत्रों में सेटिंग्स को बनाए रखने में मदद करता है। यह कोड को भी सरल बनाता है, प्रदर्शन में सुधार करता है, और सबसे महत्वपूर्ण, कार्यान्वयन को बहुत आसान बनाता है।

1. प्रॉक्सी के साथ Python Requests सत्रों का उपयोग करना

एक सत्र बनाना बहुत आसान है, बस requests.Session() में टाइप करें।

निम्नलिखित उदाहरण पर विचार करें:


import requests

# एक सत्र बनाना
session = requests.Session()

session.proxies = {
    "http": "http://username:password@your-proxy-ip:port",
    "https": "http://username:password@your-proxy-ip:port",
}

# सत्र के माध्यम से अनुरोध
response = session.get("http://example.com")

इस सत्र के भीतर सभी Python अनुरोध बिना किसी अतिरिक्त कॉन्फ़िगरेशन के डिफ़ॉल्ट रूप से सेट प्रॉक्सी का उपयोग करेंगे।

2. Python Requests में कई प्रॉक्सी का प्रबंधन

जब आप स्क्रैपिंग उद्देश्यों या स्वचालन के लिए किसी वेबसाइट के साथ सक्रिय रूप से जुड़ रहे हों, तो बार-बार एक ही प्रॉक्सी का उपयोग करने से आपका खाता ब्लॉक हो सकता है। यह कई प्रॉक्सी सर्वर होने पर प्रॉक्सी को घुमाकर प्रबंधनीय है।

निम्नलिखित उदाहरण वेब पेज के साथ प्रत्येक इंटरैक्शन के लिए प्रॉक्सी को घुमाने वाले लूप के कार्यान्वयन को दिखाता है:


import requests
import random

proxies_list = [
    "http://username:password@your-proxy-ip[1]:port",
    "http://username:password@your-proxy-ip[2]:port",
    "http://username:password@your-proxy-ip[3]:port",
]

session = requests.Session()

for _ in range(5):
    proxy = random.choice(proxies_list)  # बेतरतीब ढंग से एक प्रॉक्सी चुनें
    session.proxies = {"http": proxy, "https": proxy}

    response = session.get("http://example.com")
    print(f"Used proxy: {proxy}")
    print(response.status_code)

निष्कर्ष

संक्षेप में, यहां कुछ सुझाव दिए गए हैं जो आपको प्रॉक्सी को बेहतर ढंग से प्रबंधित करने में मदद कर सकते हैं:

  • सत्रों का उपयोग करें ताकि आपको हर अनुरोध के साथ प्रॉक्सी सेट न करना पड़े।
  • बेहतर सुरक्षा के लिए बिना लॉग के अज्ञात प्रॉक्सी का उपयोग करें।
  • ब्लॉक होने से बचने के लिए, कई प्रॉक्सी का उपयोग करें।

इस लेख में, हमने प्रॉक्सी सर्वर क्या हैं, Python Requests में प्रॉक्सी का उपयोग कैसे ठीक से करें, और कोड को सरल बनाने के लिए सत्रों के माध्यम से प्रॉक्सी का प्रबंधन कैसे करें, इस पर चर्चा की है। उदाहरण में SOCKS और नियमित प्रॉक्सी दोनों के उपयोग, प्रमाणीकरण कैसे संभाला जाता है, और प्रॉक्सी प्रबंधन भी दिखाया गया है।

टिप्पणियाँ:

0 टिप्पणियाँ