प्रॉक्सी प्रमाणीकरण को कैसे संभालें Selenium वेबड्राइवर

एक प्रॉक्सी क्या है?

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

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

इस प्रक्रिया को 'कंटेंट फ़िल्टरिंग' के नाम से जाना जाता है और इसका सबसे ज़्यादा इस्तेमाल शैक्षणिक संस्थानों, कॉर्पोरेट ऑफ़िस आदि में किया जाता है। प्रॉक्सी की मदद से कंटेंट फ़िल्टरिंग को आसानी से पूरा किया जा सकता है। इंटरनेट के मामले में, प्रॉक्सी को एक अलग सर्वर के रूप में लागू किया जा सकता है जो क्लाइंट मशीनों और वास्तविक वेब या डेटाबेस सर्वर के बीच में खड़ा होता है।

SOCKS और HTTP प्रॉक्सी के बीच अंतर

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

प्रॉक्सी को कैसे संभालें Selenium क्रोम में वेबड्राइवर

HTTP प्रॉक्सी प्रमाणीकरण के साथ Selenium क्रोम में निम्नलिखित तरीकों का उपयोग करके नियंत्रित किया जा सकता है

  • ऑटोआईटी टूल का उपयोग करना
  • अलर्ट का उपयोग करना

ऑटोआईटी टूल का उपयोग करना

ऑटो आईटी एक थर्ड पार्टी टूल है जिसका उपयोग विंडोज़ डेस्कटॉप ऑटोमेशन के लिए किया जाता है। Selenium केवल वेब-आधारित पॉपअप और विंडोज़ को संभालता है, ऑपरेटिंग सिस्टम नियंत्रण को संभालना संभव नहीं है Selenium.

इसके लिए ऑटो आईटी जैसे बाह्य तृतीय-पक्ष उपकरणों के उपयोग की आवश्यकता होती है जिन्हें एकीकृत किया जाना चाहिए। Seleniumइसके लिए, ऑटो आईटी का उपयोग आमतौर पर वेबसाइटों पर फ़ाइल अपलोड और फ़ाइल डाउनलोड को संभालने के लिए किया जाता है।

ऑटोआईटी का उपयोग करने के लिए, आपको हमारी स्थानीय मशीनों पर ऑटोआईटी सॉफ्टवेयर डाउनलोड और इंस्टॉल करना होगा।

AutoIT का डाउनलोड एवं इंस्टॉल करना इसमें शामिल है लेख.

प्रोग्राम्स – ऑटोइट टूल – SciTE स्क्रिप्ट एडिटर खोलें और नीचे उल्लिखित ऑटोइट स्क्रिप्ट को ऑटोइट एडिटर में जोड़ें और इसे अपने सिस्टम में 'ProxyAuthentication.au3' के रूप में सेव करें

फ़ाइल संकलित करें और इसे 'ProxyAuthentication.exe' के रूप में परिवर्तित करें।

In Eclipse, ऑटो आईटी फ़ाइल को इसमें जोड़ें Selenium स्क्रिप्ट और रन

नीचे HTTP प्रॉक्सी प्रमाणीकरण के लिए AutoIT स्क्रिप्ट दी गई है

Send("guru99{ENTER}")
Send("guru99{ENTER}")

आपको निष्पादन के लिए ऑटो आईटी फ़ाइल को पास करना होगा Selenium नीचे दिए गए कोड का उपयोग करके webdriver

स्रोत कोड:

package Guru99Demo;
import java.io.IOException;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class AutoITDemo {
    public static void main(String[] args) throws IOException {
        System.setProperty("webdriver.chrome.driver", "D:\\ chromedriver.exe");;
        WebDriver driver = new ChromeDriver();
        driver.get("http://demo.guru99.com/test/basic_auth.php");
        //Passing the AutoIt Script to Selenium	
        Runtime.getRuntime().exec("D:\\Data_Personal\\ProxyAuthentication.exe");
    }
}

कोड स्पष्टीकरण:

  • पहले चरण में, आप सिस्टम प्रॉपर्टी को chromedriver.exe फ़ाइल को इंगित करने के लिए सेट करके क्रोम ड्राइवर का एक इंस्टेंस आरंभ कर रहे हैं
  • दूसरे चरण में, आप वेब ड्राइवर के ऑब्जेक्ट को इनिशियलाइज़ कर रहे हैं और get विधि का उपयोग करके वेबसाइट URL पास कर रहे हैं
  • अंत में, आप एक AutoIT स्क्रिप्ट फ़ाइल का उपयोग करके HTTP प्रॉक्सी प्रमाणीकरण पॉपअप में उपयोगकर्ता नाम और पासवर्ड पास कर रहे हैं

कोड आउटपुट:

AutoIT का उपयोग करके उपयोगकर्ता नाम अलर्ट प्रबंधन
AutoIT का उपयोग करके उपयोगकर्ता नाम अलर्ट प्रबंधन
ऑटोआईटी का उपयोग करके पासवर्ड अलर्ट प्रबंधन

ऑटोआईटी का उपयोग करके पासवर्ड अलर्ट प्रबंधन
प्रॉक्सी प्रमाणीकरण सफलता स्क्रीन

प्रॉक्सी प्रमाणीकरण सफलता स्क्रीन

अलर्ट का उपयोग करना

अलर्ट सरल हैं, इनबिल्ट सुविधा प्रदान की गई है Selenium वेब ड्राइवर। आप प्रॉक्सी प्रमाणीकरण पॉपअप का उपयोग करके संभाल सकते हैं Selenium HTTP प्रॉक्सी प्रमाणीकरण अलर्ट पर स्विच करके और उपयोगकर्ता नाम और पासवर्ड को सीधे अलर्ट में भेजकर वेब ड्राइवर को सेंड कीज़ विधि की सहायता से।

उदाहरण:

परीक्षण परिदृश्य:

वेबसाइट पर HTTP प्रॉक्सी प्रमाणीकरण पॉपअप को संभालें: https://demo.guru99.com/test/basic_auth.php अलर्ट का उपयोग करना Selenium वेब ड्राइवर.

स्रोत कोड उदाहरण:

package Guru99Demo;
import java.io.IOException;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class AlertsDemo {
    public static void main(String args[]) throws IOException {
        System.setProperty("webdriver.chrome.driver", "D:\\Data_Personal\\Software\\chromedriver_win32\\chromedriver.exe");;
        WebDriver driver = new ChromeDriver();
        driver.get("http://demo.guru99.com/test/basic_auth.php");
        // Handling Username alert
        driver.switchTo().alert().sendKeys("guru99");
        driver.switchTo().alert().accept();
        // Handling Password alert
        driver.switchTo().alert().sendKeys("guru99");
        driver.switchTo().alert().accept();
    }
}

कोड आउटपुट

प्रॉक्सी प्रमाणीकरण सफलतापूर्वक किया गया.

कोड स्पष्टीकरण:

  • प्रारंभ में, आप chromedriver.exe फ़ाइल के स्थान को इंगित करने के लिए webdriver गुण को सेट करके Chrome ड्राइवर का एक इंस्टेंस बना रहे हैं
  • फिर, आप driver.get() विधि में पैरामीटर के रूप में URL पास करके आवश्यक वेबसाइट का URL खोल रहे हैं
  • एक बार यूआरएल खुल जाने के बाद, आप यूजरनेम अलर्ट पर स्विच कर रहे हैं और यूजरनेम - guru99 भेज रहे हैं। फिर आप अलर्ट.स्वीकार विधि का उपयोग करके अलर्ट पर ओके बटन पर क्लिक कर रहे हैं
  • फिर, आप पासवर्ड अलर्ट पर स्विच कर रहे हैं और पासवर्ड भेज रहे हैं - guru99. फिर आप अलर्ट.स्वीकार विधि का उपयोग करके अलर्ट पर ओके बटन पर क्लिक कर रहे हैं

सारांश

  • प्रॉक्सी क्लाइंट द्वारा अनुरोध भेजने और सर्वर द्वारा प्रतिक्रिया देने के बीच मध्यस्थ के रूप में कार्य करता है। प्रॉक्सी का मूल उपयोग गोपनीयता बनाए रखना है और कैप्सूलीकरण कई इंटरैक्टिव प्रणालियों के बीच.
  • HTTP प्रॉक्सी प्रमाणीकरण के साथ Selenium क्रोम में निम्नलिखित तरीकों का उपयोग करके नियंत्रित किया जा सकता है
  • वेबसाइट URL में उपयोगकर्ता नाम और पासवर्ड डालना
  • ऑटोआईटी टूल का उपयोग करना
  • अलर्ट का उपयोग करना
  • उपरोक्त तीन तरीकों में से, अलर्ट का उपयोग करना HTTP प्रॉक्सी प्रमाणीकरण को संभालने का सबसे प्रभावी तरीका है। Selenium वेबड्राइवर