प्रॉक्सी ब्राउज़र क्या है? आर्किटेक्चर, उपयोग के मामले और सीमाएँ
Expert Network Defense Engineer
TL;DR:
- एक प्रॉक्सी ब्राउजर एक ब्राउजर सत्र को नियंत्रित प्रॉक्सी रूटिंग के साथ संयोजित करता है। प्रॉक्सी नेटवर्क पहचान को बदलता है, जबकि ब्राउजर जावास्क्रिप्ट निष्पादन, कुकीज़, स्टोरेज और इंटरैक्शन स्थिति को बनाए रखता है।
- IP पहचान और ब्राउजर पहचान अलग-अलग परतें हैं। एक IP को घुमाने से कुकीज़, स्थानीय स्टोरेज, समय क्षेत्र, भाषा, कैनवास आउटपुट, या अन्य ब्राउजर संकेतों को रिसेट नहीं करता है।
- एक ब्राउजर प्रॉक्सी एक सेटिंग है; एक प्रॉक्सी ब्राउजर पूरा वातावरण है। एक्सटेंशन प्रॉक्सी मैनुअल ब्राउज़िंग के लिए सुविधाजनक होते हैं, जबकि प्रबंधित ब्राउजर सत्र दोहराने योग्य स्वचालन के लिए डिज़ाइन किए गए हैं।
- प्रॉक्सी प्रकार को कार्य का पालन करना चाहिए। डेटा केंद्र के IP थ्रूपुट का पक्ष लेते हैं, आवासीय IP उपभोक्ता-नेटवर्क संदर्भ का पक्ष लेते हैं, और चिपचिपे सत्र मल्टी-स्टेप नेविगेशन का पक्ष लेते हैं।
- Scrapeless Agent Browser एक CDP WebSocket एंडपॉइंट को उजागर करता है। Puppeteer और Playwright एक दूरस्थ सत्र से जुड़ सकते हैं जिसका प्रॉक्सी देश, सत्र जीवनकाल, और ब्राउजर वातावरण एक साथ कॉन्फ़िगर किया गया है।
एक प्रॉक्सी ब्राउजर क्या है?
एक प्रॉक्सी ब्राउजर एक ब्राउजर वातावरण है जो एक मध्यवर्ती प्रॉक्सी सर्वर के माध्यम से वेब अनुरोध भेजता है जबकि पृष्ठ को प्रस्तुत करने और इंटरैक्ट करने के लिए आवश्यक ब्राउजर सुविधाओं को बनाए रखता है।
उस परिभाषा के दो भाग हैं। प्रॉक्सी एक नेटवर्क पथ और एक बाहरी IP पता प्रदान करता है। ब्राउज़र जावास्क्रिप्ट निष्पादन, DOM स्थिति, कुकीज़, स्टोरेज, नेविगेशन, और उपयोगकर्ता-जैसे इंटरएक्शन प्रदान करता है। इसलिए, एक साधारण HTTP क्लाइंट जिसमें प्रॉक्सी है, एक प्रॉक्सी ब्राउजर के समान नहीं है, भले ही दोनों किसी अन्य IP के माध्यम से ट्रैफ़िक को रूट कर सकते हैं।
नीचे दी गई प्रॉक्सी व्यवहार वही मॉडल का अनुसरण करती है जो HTTP अर्थशास्त्र विनिर्देश द्वारा वर्णित है: एक क्लाइंट HTTP अनुरोधों को एक मध्यवर्ती को निर्देशित कर सकता है, और HTTPS ट्रैफ़िक CONNECT विधि का उपयोग करके एक गंतव्य के लिए टनल स्थापित कर सकता है।
एक प्रॉक्सी ब्राउजर अनुरोध कैसे बहता है
एक प्रॉक्सी ब्राउजर अनुरोध दो प्रणालियों के माध्यम से चलता है जिन्हें संगत रहना चाहिए: ब्राउज़र सत्र और प्रॉक्सी रूट।
- एक स्वचालन क्लाइंट एक ब्राउजर सत्र बनाता है या उस से जुड़ता है।
- सत्र एक प्रॉक्सी कॉन्फ़िगरेशन प्राप्त करता है, जैसे देश और सत्र नीति।
- ब्राउज़र प्रॉक्सी एंडपॉइंट के माध्यम से पृष्ठ और एसेट अनुरोध भेजता है।
- लक्ष्य प्रॉक्सी के बाहरी-facing IP पते को प्राप्त करता है।
- ब्राउज़र जावास्क्रिप्ट को निष्पादित करता है, DOM को अद्यतित करता है, कुकीज़ को संग्रहीत करता है, और नेविगेशन स्थिति को बनाए रखता है।
- स्वचालन क्लाइंट कंट्रोल प्रोटोकॉल के माध्यम से प्रस्तुत पृष्ठ को पढ़ता है या बदलता है।
प्रॉक्सी पृष्ठ को प्रस्तुत नहीं करता। ब्राउजर प्रॉक्सी नेटवर्क का निर्माण नहीं करता है। एक विश्वसनीय प्रॉक्सी ब्राउजर दोनों परतों को एक कार्य के जीवनकाल के लिए संरेखित रखता है।
IP पहचान और ब्राउजर पहचान अलग हैं
IP पहचान उस नेटवर्क उत्पत्ति का वर्णन करती है जिसे एक लक्ष्य देख सकता है। ब्राउजर पहचान ब्राउज़िंग वातावरण द्वारा उजागर की गई स्थिति और संकेतों का वर्णन करती है।
| Layer | Typical signals | What changes it |
|---|---|---|
| नेटवर्क पहचान | IP पता, नेटवर्क मालिक, मोटे स्थान | प्रॉक्सी एंडपॉइंट और प्रवाह चयन |
| HTTP पहचान | हेडर, स्वीकृत भाषाएँ, कुकीज़ | ब्राउज़र प्रोफ़ाइल और अनुरोध कॉन्फ़िगरेशन |
| रनटाइम पहचान | समय क्षेत्र, स्क्रीन आकार, फ़ॉन्ट, WebGL, कैनवास | ब्राउज़र इंजन और प्रोफ़ाइल सेटिंग |
| सत्र पहचान | कुकीज़, स्थानीय स्टोरेज, कैश, लॉगिन स्थिति | ब्राउज़र संदर्भ और स्थिरता नीति |
| व्यवहार | नेविगेशन क्रम, समय, क्लिक, फॉर्म इनपुट | स्वचालन तर्क या एजेंट क्रियाएँ |
केवल IP बदलने से अन्य परतें बरकरार रहती हैं। असंबंधित IP पर एक ब्राउज़र प्रोफ़ाइल का पुन: उपयोग एक असंगत पहचान पैदा कर सकता है। हर पृष्ठ पर ब्राउज़र संदर्भ को बदलने से एक मल्टी-स्टेप कार्यप्रवाह भी टूट सकता है जो एक कार्ट, सहमति विकल्प, या प्रमाणित स्थिति पर निर्भर करता है।
WHATWG वेब स्टोरेज मानक ब्राउज़र-प्रबंधित स्टोरेज को परिभाषित करता है जो वर्तमान नेटवर्क रूट से स्वतंत्र रूप से बना रहता है। कुकी व्यवहार भी प्रॉक्सी की बजाय ब्राउज़र स्थिति द्वारा नियंत्रित होता है।
प्रॉक्सी ब्राउजर बनाम ब्राउजर प्रॉक्सी बनाम एक्सटेंशन प्रॉक्सी
ये तीन शर्तें विभिन्न दायरों का वर्णन करती हैं।
| Term | Meaning | Best fit | Main limitation |
|---|---|---|---|
| ब्राउज़र प्रॉक्सी | एक मौजूदा ब्राउज़र पर लागू प्रॉक्सी सेटिंग | मैनुअल परीक्षण और सरल रूटिंग | स्वयं सत्र समन्वय प्रदान नहीं करता |
| प्रॉक्सी ब्राउजर | प्रॉक्सी रूटिंग और सत्र नियंत्रण के चारों ओर निर्मित एक ब्राउज़र वातावरण | स्क्रैपिंग, स्थानीयकरण, निगरानी, एजेंट | ब्राउज़र जीवनचक्र प्रबंधन की आवश्यकता है |
| एक्सटेंशन प्रॉक्सी | एक ब्राउज़र ऐड-ऑन जो प्रॉक्सी सेटिंग बदलता है | त्वरित मैनुअल जांच | आमतौर पर एक डेस्कटॉप प्रोफ़ाइल से जुड़ा होता है और अनियंत्रित कार्यभार के लिए कमजोर होता है |
एक ब्राउज़र प्रॉक्सी आमतौर पर एक कॉन्फ़िगरेशन विकल्प होती है। एक प्रॉक्सी ब्राउज़र उस विकल्प के चारों ओर का संचालन वातावरण है। एक एक्सटेंशन प्रॉक्सी कॉन्फ़िगरेशन लागू करने के लिए एक उपयोगकर्ता-इंटरफेस तंत्र है।
स्वचालन में भिन्नता महत्वपूर्ण है। एक एक्सटेंशन यह बदल सकता है कि एक टैब अनुरोधों को कहाँ भेजता है, लेकिन यह स्वचालित रूप से अलग-अलग प्रोफाइल नहीं बनाता है, दूरस्थ नियंत्रण को प्रकट नहीं करता है, मशीनों के बीच कार्य की स्थिति को संरक्षित नहीं करता है, या एक IP को समय क्षेत्र और भाषा के साथ समन्वयित नहीं करता है।
प्रॉक्सी प्रकार जो प्रॉक्सी ब्राउज़रों द्वारा उपयोग किए जाते हैं
प्रॉक्सी प्रकार सत्र के नेटवर्क गुणों को निर्धारित करता है, न कि ब्राउज़र की रेंडरिंग क्षमता।
डेटा सेंटर प्रॉक्सीज
डेटा सेंटर प्रॉक्सीज सर्वर अवसंरचना पर होस्ट किए गए पते का उपयोग करते हैं। ये उन लक्ष्यों तक उच्च-थ्रूपुट पहुँच के लिए उपयुक्त होते हैं जो क्लाउड-नेटवर्क ट्रैफ़िक को स्वीकार करते हैं, निश्चित स्थलों से दोहराए जाने वाले परीक्षण, और कार्यभार जहाँ बैंडविड्थ और पूर्वानुमानित मार्ग महत्वपूर्ण होते हैं।
आवासीय प्रॉक्सीज
आवासीय प्रॉक्सीज उपभोक्ता-नेटवर्क पते के माध्यम से रूट करते हैं। ये तब उपयोगी होते हैं जब एक कार्यप्रवाह को ऐसा देश या क्षेत्र संदर्भ की आवश्यकता होती है जो साधारण घरेलू ट्रैफ़िक के समान हो। प्रदाता के स्रोत, सहमति मॉडल, स्थान सटीकता, और सत्र नियंत्रण उतने ही महत्वपूर्ण होते हैं जितना कि पूल का आकार।
ISP प्रॉक्सीज
ISP प्रॉक्सीज एक इंटरनेट सेवा प्रदाता के माध्यम से पंजीकृत पते को सर्वर-होस्टेड स्थिरता के साथ संयोजित करते हैं। इन्हें अक्सर लंबे सत्रों के लिए चुना जाता है जिन्हें लगातार बाहरी पहचान की आवश्यकता होती है।
रोटेटिंग और स्टिकी सत्र
रोटेशन और चिपचिपापन नीतियाँ होती हैं, न कि स्रोत प्रकार। एक घुमावदार नीति अनुरोधों या सत्रों के बीच निर्गमन पते को बदल देती है। एक चिपचिपा नीति एक निर्धारित कार्य विंडो के लिए वही पता रखती है। खोज-परिणाम संग्रह रोटेशन को सहन कर सकता है, जबकि एक कार्ट या मल्टी-पेज कार्यप्रवाह को आमतौर पर निरंतरता की आवश्यकता होती है।
Scrapeless के साथ स्क्रैपिंग शुरू करें
Scrapeless के साथ अपने वेब स्क्रैपिंग और स्वचालन कार्यप्रवाह को शक्ति दें!
आज ही साइन अप करें और $5 का मुफ्त क्रेडिट प्राप्त करें — क्रेडिट कार्ड की आवश्यकता नहीं है।अब अपना मुफ्त क्रेडिट Scrapeless डैशबोर्ड में दावा करें।
प्रॉक्सी ब्राउज़रों का स्थान
एक प्रॉक्सी ब्राउज़र तब उपयोगी होता है जब कार्य को नियंत्रित किए जाने वाले ब्राउज़र और नियंत्रित नेटवर्क उत्पत्ति की आवश्यकता होती है।
- वेब डेटा संग्रह। क्लाइंट-साइड पृष्ठों को रेंडर करें, फ़िल्टर बनाए रखें, पृष्ठांकन का पालन करें, और उपयुक्त स्थानों के माध्यम से सत्रों को रूट करते हुए सार्वजनिक क्षेत्रों को निकालें।
- स्थानीयकरण परीक्षण। नियंत्रित क्षेत्रों से भाषा, मुद्रा, कैटलॉग, कर, या लैंडिंग-पृष्ठ मतभेदों की जांच करें।
- विज्ञापन सत्यापन। पुष्टि करें कि एक सार्वजनिक अभियान की क्रिएटिव और गंतव्य अपेक्षित रूप से लक्षित बाजार में प्रकट होते हैं।
- बाजार अनुसंधान। क्षेत्रों में सार्वजनिक मूल्य निर्धारण, विविधता, उपलब्धता, और संदेश देखिए।
- AI एजेंट। एक एजेंट को एक स्थायी ब्राउज़र दें जो कई पृष्ठों के बीच नेविगेट कर सके, पढ़ सके, क्लिक कर सके, और कार्य को जारी रख सके।
उसी उपकरण का दुरुपयोग किया जा सकता है, इसलिए दायरा महत्वपूर्ण है। सार्वजनिक डेटा एकत्र करें, संग्रहीत फ़ील्ड को कम करें, लागू शर्तों और कानून का सम्मान करें, और प्रतिबंधित या निजी सतहों से बचें।
एजेंट ब्राउज़र पैटर्न को कैसे लागू करता है
Scrapeless एजेण्ट ब्राउज़र एक मानक CDP वेब सॉकेट अंत बिंदु के माध्यम से एक दूरस्थ ब्राउज़र सत्र प्रदान करता है। प्रॉक्सी देश और सत्र जीवनकाल संबंधी URL पर कॉन्फ़िगर होता है, इसलिए नेटवर्क मार्ग और ब्राउज़र जीवन चक्र एक साथ शुरू होते हैं।
नियंत्रण परत Puppeteer और Playwright के साथ संगत है। CDP स्वयं एक सेट है जो एक क्रोमियम-आधारित ब्राउज़र का निरीक्षण और नियंत्रण करने के लिए डोमेन प्रदान करता है; Chrome DevTools प्रोटोकॉल संदर्भ दूरस्थ क्लाइंट द्वारा उपयोग की जाने वाली प्रोटोकॉल सतह का दस्तावेजीकरण करता है।
पूर्वापेक्षा: कनेक्शन के लिए
SCRAPELESS_API_KEYमें Scrapeless API कुंजी की आवश्यकता होती है।
javascript
import puppeteer from "puppeteer-core";
const token = process.env.SCRAPELESS_API_KEY;
if (!token) throw new Error("SCRAPELESS_API_KEY is required");
const endpoint = new URL("wss://browser.scrapeless.com/api/v2/browser");
endpoint.searchParams.set("token", token);
endpoint.searchParams.set("sessionTTL", "180");
endpoint.searchParams.set("proxyCountry", "US");
const browser = await puppeteer.connect({
browserWSEndpoint: endpoint.toString(),
});
const page = await browser.newPage();
await page.goto("https://example.com", { waitUntil: "domcontentloaded" });
console.log(await page.title());
await browser.close();
उदाहरण में कार्य को जानबूझकर छोटा रखा गया है: एक प्रबंधित सत्र बनाएं, US निर्गमन को पिन करें, एक सार्वजनिक पृष्ठ लोड करें, इसके शीर्षक को पढ़ें, और ब्राउज़र को बंद करें। उत्पादन कार्यप्रवाह को भी सत्र सीमाओं, अनुमत लक्ष्यों, डेटा संग्रहण, और समवर्ती सीमाओं को परिभाषित करना चाहिए।
सीमाएँ जिनसे प्रॉक्सी ब्राउज़र नहीं हटाता
एक प्रॉक्सी ब्राउज़र हर पृष्ठ को अधिकृत या स्थिर डेटा स्रोत में नहीं बदलता है।
- पहुंच के नियम अब भी लागू होते हैं। प्रमाणीकरण, अनुमतियाँ, रोबोट निर्देशांक, साइट की शर्तें, और लागू कानून प्रासंगिक रहते हैं।
- एक नई IP अपने आप में नई पहचान नहीं है। कुकी, संग्रहण, स्थान, और रनटाइम संकेतों को सुसंगत रहना चाहिए।
- गतिशील पृष्ठों को अभी भी निष्कर्षण तर्क की आवश्यकता होती है। रेंडरिंग एक DOM बनाती है; यह यह निर्धारित नहीं करती है कि कौन से फ़ील्ड सही हैं।
- स्थान पूरी तरह से भविष्यवाणी योग्य नहीं है। सामग्री भी खाता स्थिति, भाषा, उपकरण, इन्वेंटरी, और प्रयोग सौंपने पर निर्भर कर सकती है।
- लंबे कार्यों की निगरानी की आवश्यकता होती है। कंसोल लॉग, नेटवर्क ट्रेस, स्क्रीनशॉट, और सत्र पुनरावलोकन अक्सर अंतिम त्रुटि स्ट्रिंग से अधिक मूल्यवान होते हैं।
W3C वेबड्राइवर मानक एक ही आर्किटेक्चरल विभाजन को स्पष्ट बनाता है: एक स्वचालन क्लाइंट एक परिभाषित दूरस्थ इंटरफेस के माध्यम से एक ब्राउज़र को नियंत्रित करता है, जबकि ब्राउज़र नेविगेशन और दस्तावेज़ व्यवहार के लिए जिम्मेदार रहता है।
प्रॉक्सी ब्राउज़र कैसे चुनें
कार्यप्रणाली से वातावरण को मिलाकर प्रॉक्सी ब्राउज़र चुनें।
| प्रश्न | सरल ब्राउज़र प्रॉक्सी को पसंद करें | प्रबंधित प्रॉक्सी ब्राउज़र को पसंद करें |
|---|---|---|
| क्या कार्य मैनुअल और अस्थायी है? | हाँ | आवश्यकता नहीं है |
| क्या पृष्ठ को जावास्क्रिप्ट और इंटरैक्शन की आवश्यकता है? | कभी-कभी | हाँ |
| क्या कार्यप्रवाह कई पृष्ठों में फैला है? | सीमित | हाँ |
| क्या सत्र कोड या एजेंट द्वारा बनाए जाते हैं? | नहीं | हाँ |
| क्या भौगोलिक रूटिंग प्रत्येक चाल के भाग है? | मैनुअल सेटअप | केंद्रीय कॉन्फ़िगरेशन |
| क्या लॉग और पुनरावलोकन की आवश्यकता है? | केवल ब्राउज़र डेवटूल्स | प्रबंधित अवलोकनशीलता |
| क्या कई पृथक सत्र समानांतर में चलने चाहिए? | Poor fit | इसके लिए डिज़ाइन किया गया |
प्रॉक्सी उत्पाद की जांच करें: स्रोत प्रकार, साझेदारी मॉडल, स्थान नियंत्रण, स्टिकी-सत्र व्यवहार, समर्थित प्रोटोकॉल, प्रमाणीकरण, उपयोग रिपोर्टिंग, और स्रोत नीति। Scrapeless प्रॉक्सी अवलोकन बताता है कि डेटा केंद्र, आवासीय, ISP, और IPv6 विकल्प कहाँ फिट होते हैं।
निष्कर्ष
एक प्रॉक्सी ब्राउज़र दो स्वतंत्र नियंत्रणों को जोड़ता है: जहां ट्रैफ़िक निकलता है और ब्राउज़र कैसे व्यवहार करता है। स्वच्छ वास्तुकला नेटवर्क पहचान, ब्राउज़र पहचान, और सत्र राज्य को एक अधिकृत कार्य के लिए संरेखित रखती है।
प्रॉक्सी बुनियादी ढांचे के व्यापक स्पष्टीकरण के लिए, पढ़ें क्लाउड प्रॉक्सी क्या है, वर्तमान विकल्पों की तुलना करें Scrapeless मूल्य निर्धारण पृष्ठ पर, और एजेंट ब्राउज़र दस्तावेज़ीकरण का उपयोग करें जो कनेक्शन पैरामीटर का सत्य स्रोत है।
स्थान-जानकारी वाले ब्राउज़र कार्यप्रवाह बनाने के लिए तैयार?
ब्राउज़र स्वचालन का निर्माण करने वाली टीमों के साथ सत्र डिज़ाइन की तुलना करने के लिए Scrapeless समुदाय में शामिल हों: Discord · Telegram.
app.scrapeless.com पर साइन अप करें और अपने कार्यप्रवाह की आवश्यकताओं के अनुसार प्रॉक्सी देश और सत्र नीति के साथ एजेंट ब्राउज़र को कनेक्ट करें।
अक्सर पूछे जाने वाले प्रश्न
प्र: क्या प्रॉक्सी ब्राउज़र और VPN समान हैं?
नहीं। एक प्रॉक्सी ब्राउज़र एक ब्राउज़र वातावरण पर प्रॉक्सी रूटिंग लागू करता है, जबकि एक VPN आमतौर पर एक डिवाइस- या नेटवर्क-स्तरीय टनल बनाता है जो व्यापक ट्रैफ़िक को कवर करता है।
प्र: क्या प्रॉक्सी ब्राउज़र हर पहचान संकेत को छिपाता है?
नहीं। एक प्रॉक्सी नेटवर्क पते को बदलता है, लेकिन कुकीज़, भंडारण, स्थानीयकरण, स्क्रीन सेटिंग्स, रनटाइम व्यवहार, और खाता राज्य अभी भी एक सत्र की पहचान या सहसंबंधित कर सकते हैं।
प्र: क्या प्रॉक्सी ब्राउज़र हेडलेस चला सकता है?
हाँ। एक प्रबंधित प्रॉक्सी ब्राउज़र बिना दृश्य डेस्कटॉप इंटरफेस के चल सकता है जबकि इसे Puppeteer, Playwright, CDP, या किसी अन्य समर्थित स्वचालन क्लाइंट के माध्यम से नियंत्रित किया जा सकता है।
प्र: प्रॉक्सी ब्राउज़र को कौन सा प्रॉक्सी प्रकार उपयोग करना चाहिए?
संगत हाई-थ्रूपुट लक्ष्यों के लिए डेटा सेंटर प्रॉक्स का उपयोग करें, जब उपभोक्ता-नेटवर्क संदर्भ महत्वपूर्ण हो, तब आवासीय प्रॉक्स का उपयोग करें, और जब स्थिर दीर्घकालिक पहचान महत्वपूर्ण हो, तब ISP प्रॉक्स का उपयोग करें। वास्तविक लक्ष्यों के खिलाफ विकल्पों को मान्य करें।
प्र: क्या प्रॉक्सी ब्राउज़र का उपयोग करना कानूनी है?
यह तकनीक कई न्यायालयों में कानूनी है, लेकिन कार्य, डेटा, अनुबंध, और पहुंच विधि निर्धारित करती है कि किसी विशिष्ट उपयोग की अनुमति है या नहीं। सार्वजनिक डेटा इकट्ठा करें, साइट की शर्तों की समीक्षा करें, और संबंधित न्यायालय के लिए कानूनी सलाह प्राप्त करें।
प्र: क्या एजेंट ब्राउज़र बिना AI एजेंट के काम कर सकता है?
हाँ। एजेंट ब्राउज़र एक CDP वेबस्कॉकेट एंडपॉइंट को एक्सपोज़ करता है जिसे सामान्य Puppeteer या Playwright कोड बिना AI तर्क परत के नियंत्रित कर सकता है।
स्क्रैपलेस में, हम केवल सार्वजनिक रूप से उपलब्ध डेटा का उपयोग करते हैं, जबकि लागू कानूनों, विनियमों और वेबसाइट गोपनीयता नीतियों का सख्ती से अनुपालन करते हैं। इस ब्लॉग में सामग्री केवल प्रदर्शन उद्देश्यों के लिए है और इसमें कोई अवैध या उल्लंघन करने वाली गतिविधियों को शामिल नहीं किया गया है। हम इस ब्लॉग या तृतीय-पक्ष लिंक से जानकारी के उपयोग के लिए सभी देयता को कोई गारंटी नहीं देते हैं और सभी देयता का खुलासा करते हैं। किसी भी स्क्रैपिंग गतिविधियों में संलग्न होने से पहले, अपने कानूनी सलाहकार से परामर्श करें और लक्ष्य वेबसाइट की सेवा की शर्तों की समीक्षा करें या आवश्यक अनुमतियाँ प्राप्त करें।



