
Lucas Mitchell
Automation Engineer

एक एआई ब्राउजर एजेंट पहले इरादेपूर्वक फॉर्म का चयन करना चाहिए, इसके वर्तमान CAPTCHA विजेट की पहचान करना चाहिए, और समाधान और एप्लिकेशन पुष्टि के माध्यम से इस संबंध को बनाए रखना चाहिए।
एक स्वामित्व वाले समर्थन पोर्टल में एक ही पृष्ठ पर दो फॉर्म हो सकते हैं: एक समर्थन अनुरोध और वैकल्पिक उत्पाद समीक्षा। एक अधिकृत क्वालिटी एसर्टियन एजेंट समर्थन अनुरोध का परीक्षण कर रहा है। समीक्षा CAPTCHA पूरा करना चाहे वे दोनों फॉर्म एक ही प्रदाता का उपयोग करते हों और दिखावट में समान हों, लेकिन इसके बावजूद यह कार्य पूरा नहीं होगा।
एक CAPTCHA सॉल्वर जैसे कैपसॉल्वर एजेंट द्वारा इरादेपूर्वक चुने गए समर्थित चुनौती की आवश्यकता के बाद ही आवश्यक है। सॉल्वर चयनित CAPTCHA कार्य के लिए एक उत्तर प्रदान करता है; एप्लिकेशन एंटीग्रेशन इस उत्तर के सही रूप से रूटिंग के लिए जिम्मेदार रहता है।
यह आपके टीम द्वारा स्वामित्व या परीक्षण के लिए अधिकृत पृष्ठों के लिए एक वर्कफ्लो और क्वालिटी एसर्टियन डिज़ाइन गाइड है। यह कई विजेट के लिए आवश्यक रिकॉर्ड, स्टेज सीमाएं और जांच का वर्णन करता है। यह अकेले एक परीक्षण किए गए, एम्बेड किए गए SDK एंटीग्रेशन का दावा नहीं करता है।
एक विश्वसनीय वर्कफ्लो के लिए एक स्पष्ट कार्य विस्तार, एक स्वामित्व वाले फॉर्म-विजेट मैपिंग और एप्लिकेशन के परीक्षण परिणाम की जांच करने के लिए एक तरीका आवश्यक है।
एक परीक्षण पृष्ठ शुरू करें जिसमें आपके एप्लिकेशन द्वारा समर्थित वास्तविक लेआउट विविधताएं हों। इरादेपूर्वक फॉर्म और अनुमति वाले कार्य की रिकॉर्डिंग करें। एजेंट को यह नहीं अनुमान लगाना चाहिए कि प्रत्येक दृश्यमान सबमिट बटन इसके कार्य का हिस्सा है।
पृष्ठ के मालिक को स्थिर फॉर्म पहचानकर्ता प्रदान करना चाहिए और प्रदाता के सार्वजनिक एंटीग्रेशन द्वारा बनाए गए विजेट हैंडल बनाए रखना चाहिए। reCAPTCHA के लिए, ये हैंडल क्लाइंट-साइड जीवन चक्र के हिस्से हैं। वे सेवा के सामान्य भूमिका में ऑटोमेटेड अंतरक्रिया की जांच करने के लिए अलग हैं।
आपके पास समर्थित सॉल्वर कार्य, पृष्ठ सामग्री के बाहर संग्रहीत क्रेडेंशियल, सीमित प्रतीक्षा नीति और एक बैकएंड परिणाम होना चाहिए जिसे क्वालिटी एसर्टियन हार्नेस देख सकता है। यदि आपके एप्लिकेशन में चयनित सॉल्वर पथ द्वारा समर्थित नहीं किया गया CAPTCHA प्रारूप है, तो अनुमान लगाने के बजाय इस सीमा पर रुक जाएं।
सामान्य फॉर्म तकनीक के लिए मालिक-नियंत्रित परीक्षण सुविधाओं के प्राथमिकता दें। जहां अनुमति वाले परीक्षण वास्तविक सॉल्वर पथ का मूल्यांकन करता है, उस परीक्षण को अलग-से चिह्नित करें ताकि एक सिमुलेटेड CAPTCHA परिणाम अंत-से-अंत सेवा पुष्टि के रूप में गलत तरीके से गणना न किया जाए।
पहला चरण एजेंट के अनुरोध के कार्य को एक स्पष्ट फॉर्म और विजेट संबंध में बदलता है।
इनपुट अनुमति वाला कार्य है, जैसे कि स्टेजिंग पोर्टल पर एक कृत्रिम समर्थन अनुरोध भेजना। कार्य एप्लिकेशन के स्थिर पहचानकर्ता के माध्यम से समर्थन फॉर्म की पहचान करता है और उस घटक द्वारा बनाए रखे गए विजेट रेफरेंस को प्राप्त करता है। आउटपुट एक फॉर्म रेफरेंस और वर्तमान विजेट उदाहरण है, बस "एक CAPTCHA मौजूद है" नहीं।
गूगल के reCAPTCHA v2 प्रदर्शन दस्तावेज़ में स्पष्ट रूप से रेंडरिंग और कई विजेट के बारे में बताया गया है। रेंडरिंग एक विजेट आईडी लौटाता है; getResponse और reset जैसी विधियां एक विजेट आईडी स्वीकार करती हैं, और इसके बिना डिफ़ॉल्ट रूप से पहला विजेट उपयोग किया जाता है। यह डिफ़ॉल्ट तब गलत हो सकता है जब पृष्ठ के इरादेपूर्वक कार्य दूसरे फॉर्म के लिए हो।
क्लाउडफ्लेर के टर्नस्टाइल क्लाइंट-साइड रेंडरिंग गाइड भी स्पष्ट विजेट रेंडरिंग और जीवन चक्र प्रबंधन के बारे में बताता है। प्रदाता के एपीआई और बनाए रखे गए हैंडल का उपयोग करें, बजाय प्रदाता के बीच विधि अनुमानों के स्थानांतरण के।
यदि एक से अधिक विजेट फॉर्म से मैप होते हैं, या मैपिंग अनुपलब्ध है, तो इस चरण को एक कार्यात्मक निदान के साथ विफल कर देना चाहिए। DOM क्रम आमान्यता के लिए पर्याप्त साक्ष्य नहीं है। फॉर्म रेफरेंस, पृष्ठ उत्पादन और मैपिंग परिणाम को जांच के लिए संग्रहीत करें; निदान रिकॉर्ड में टोकन मानों को संग्रहीत न करें।
दूसरा चरण प्रत्येक पहचानकर्ता के एक अकेले अर्थ को देता है ताकि असिंक्रोनस कार्य एक पृष्ठ घटक को दूरस्थ सॉल्वर कार्य से गलत तरीके से न भूल जाए।
| पहचानकर्ता | क्या दर्शाता है | क्या नहीं बदलना चाहिए |
|---|---|---|
| फॉर्म रेफरेंस | स्वामित्व वाले एप्लिकेशन कार्य | प्रदाता कार्य आईडी |
| DOM कंटेनर आईडी | विजेट के साथ एक पृष्ठ तत्व | प्रदाता के रनटाइम विजेट हैंडल |
| प्रदाता विजेट आईडी | एक रेंडर किया गया विजेट उदाहरण | CAPTCHA साइट कुंजी |
| साइट कुंजी | प्रदाता एंटीग्रेशन कॉन्फ़िगरेशन | फॉर्म प्रयास की विशिष्ट पहचान |
| सॉल्वर कार्य आईडी | एक दूरस्थ सॉल्व अनुरोध, जब लौटाया जाता है | ब्राउजर तत्व या फॉर्म आईडी |
| एप्लिकेशन प्रयास रेफरेंस | इरादेपूर्वक कार्य के एक निष्पादन | पृष्ठ पर बाद के पुनर्प्रयास में प्रत्येक |
इन लेबल एक प्रस्तावित एप्लिकेशन रिकॉर्ड हैं, प्रदाता प्रतिक्रिया स्कीमा नहीं। प्रत्येक हैंडल के मूल मान और प्रकार को बरकरार रखें, बजाय सभी पहचानकर्ताओं को एक बदले जाने वाले स्ट्रिंग में सामान्यीकृत करने के।
दो विजेट एक ही कॉन्फ़िगरेशन का उपयोग कर सकते हैं और अलग-अलग फॉर्म के हो सकते हैं। इसलिए, जब एक स्वामित्व वाले पृष्ठ द्वारा इस कॉन्फ़िगरेशन का जानबूझकर उपयोग किया जाता है, तो साइट कुंजी द्वारा चयन करना अपर्याप्त है। एप्लिकेशन को पिछले चरण में स्थापित फॉर्म संबंध की आवश्यकता होती है।
रिकॉर्ड में एक पृष्ठ या घटक उत्पादन जोड़ें। एक डायलॉग बंद हो सकता है और एक नए विजेट उदाहरण के साथ फिर से खुल सकता है जबकि इसका दृश्यमान शीर्षक बरकरार रहता है। उत्पादन बाद के चरणों में यह निर्धारित करने में मदद करता है कि एक परिचित दिखने वाला फॉर्म अब वह उदाहरण नहीं है जिसने सॉल्व प्रयास शुरू किया था।
तीसरा चरण चयनित विजेट संबंध को समर्थित सॉल्वर जानकारी में बदलता है जबकि इसके संबंध को इरादेपूर्वक फॉर्म के साथ बरकरार रखता है।
CapSolver Core SDK संदर्भ कई ऑपरेशन अलग करता है: detect(page) CAPTCHA प्रकार लौटाता है, get_captcha_info(page) CAPTCHA जानकारी रिकॉर्ड लौटाता है, और solve(info) एक समाधान लौटाता है। दस्तावेज़ किए गए टोकन-मोड कवरेज में reCAPTCHA v2, reCAPTCHA v3 और Turnstile शामिल हैं; यह छवि ग्रिड क्लिक करने या स्लाइडर खींचने जैसे प्रकार को कवर नहीं करता है।
संदर्भ ब्राउजर भरने के पीछे मेटाडेटा जैसे container_id, callback और binded_button_id के बारे में भी बताता है। इन्हें स्वामित्व वाले फॉर्म मैपिंग के साथ एकजुट करने के रूप में विचार करें। एक पहचान अकेले विजेट उदाहरणों की गणना नहीं करती है, और सूची का पहला प्रविष्टि यह साबित नहीं करता कि यह एजेंट के कार्य से संबंधित है।
अपने अपने पृष्ठ पर उपलब्ध जानकारी की जांच करें, इसके फ्रेम और रेंडरिंग व्यवहार सहित। यदि डिटेक्टर एक इरादेपूर्वक विजेट का चयन करने के लिए पर्याप्त साक्ष्य प्रदान नहीं करता है, तो एक एंटीग्रेशन सुधार के लिए रुक जाएं। बिना किसी आवाज के पृष्ठ पर सभी चुनौतियों के लिए कार्य विस्तार न करें।
इस चरण का आउटपुट एक चयनित जानकारी रिकॉर्ड और उसके चयन के कारण बताने वाला एप्लिकेशन संबंध है। इसकी विफलता सीमा अस्पष्टता या असमर्थित कवरेज है। उपयोगी साक्ष्य में चयनित प्रदाता प्रकार और मैपिंग निर्णय शामिल हैं, जहां गुप्त और समाधान टोकन छोड़ दिए गए हैं।
अपना CapSolver बोनस कोड जमा करें
अपने ऑटोमेशन बजट को तुरंत बढ़ाएं!
CapSolver खाता में जमा करते समय बोनस कोड CAP26 का उपयोग करें ताकि प्रत्येक भुगतान पर 5% बोनस मिले — कोई सीमा नहीं।
अपने CapSolver डैशबोर्ड में अब जमा करें
चौथा चरण एक सॉल्वर परिणाम को केवल तभी स्वीकार करता है जब चयनित फॉर्म और विजेट संबंध अभी भी वर्तमान हैं।
समाधान के अनुरोध से पहले, आवेदन को अपने चयनित CAPTCHA जानकारी पर प्रतीक्षा के रूप में चिह्नित करें। जब असिंक्रोनस ऑपरेशन वापस आता है, तो पृष्ठ उत्पादन और विजेट संबंध की पुनः जांच करें। यदि समर्थन डायलॉग बंद हो गया है या इसका CAPTCHA फिर से अपडेट हो गया है, तो मूल परिणाम को समीक्षा फॉर्म पर पुनर्निर्देशित नहीं किया जाना चाहिए।
CapSolver solve_on_page के रूप में एक पृष्ठ-स्तरीय पाइपलाइन के रूप में दस्तावेज़ करता है जो जानकारी, समाधान, भरने की स्थिति और त्रुटि के साथ परिणाम लौटाता है। इसकी सूची में एक विजेट सेलेक्टर शामिल नहीं है। यदि आपके अपने वेरिफाइड एंटीग्रेशन द्वारा आवश्यक स्कोप स्थापित किया गया है, तो इस विधि को फॉर्म-स्कोप ऑपरेशन के रूप में वर्णित न करें। हाथ से solve(info) चरण एक समाधान लौटाता है; परिणाम वितरण अकेले यह साबित नहीं करता कि सही फॉर्म भरा गया था।
एक स्वामित्व एप्लिकेशन में, उस विजेट के साथ जिसे आपके घटक एंटीग्रेशन ने पहले से ही स्वामित्व किया है, उत्तर के माध्यम से पारित करें। इस एप्लिकेशन-विशिष्ट चरण को प्रदाता डिटेक्शन से अलग रखें। एक सामान्य "सबसे हाल के टोकन" चरित्र यह निर्धारित करने में कठिनाई पैदा करता है कि कौन सा फॉर्म एक परिणाम के लिए संबंधित है और असंबंधित फॉर्म त्रुटियों को छिपा सकता है।
इस चरण का आउटपुट एक विनिर्णय है: इरादेपूर्वक वर्तमान घटक को हस्तांतरित करें, आवश्यक नहीं है, या विवरण बदल गए हैं के कारण अस्वीकृत करें। उपस्थिति के बाद सबमिशन में विनिर्णय की रिकॉर्डिंग करें। एक सॉल्वर त्रुटि असंबंधित समीक्षा विजेट को अकेला छोड़ देना चाहिए।
अंतिम चरण समर्थन अनुरोध के खुद को पुष्टि करता है और सॉल्वर, रूटिंग और एप्लिकेशन विफलताओं के बीच अंतर करने के लिए पर्याप्त संदर्भ रिकॉर्ड करता है।
गूगल के सर्वर-साइड उत्तर पुष्टि गाइड में उत्तर टोकन की पुष्टि की आवश्यकता होती है और टोकन केवल एक बार उपयोग किए जाने वाले होते हैं और दो मिनट के बाद समाप्त हो जाते हैं। इन नियमों को एक सॉल्वर के अलग परिणाम-प्राप्ति खंड से भ्रमित न करें। स्वामित्व एप्लिकेशन को अपने प्रदाता-विशिष्ट बैकएंड पुष्टि करना आवश्यक है।
फिर, क्वालिटी एसर्टियन हार्नेस एप्लिकेशन के वास्तविक पूर्णता संकेत की जांच करें। समर्थन पोर्टल के लिए, यह एक परीक्षण अनुरोध संदर्भ हो सकता है जो स्वामित्व बैकएंड द्वारा लौटाया गया है। एक हरा विजेट या भरे उत्तर क्षेत्र अकेले यह साबित नहीं करता कि सही समर्थन अनुरोध स्वीकृत किया गया था।
एक संक्षिप्त परिणाम संग्रहीत करें जिसमें परीक्षण मामला संदर्भ, फॉर्म संदर्भ, विजेट उत्पादन, सॉल्वर विनिर्णय, बैकएंड पुष्टि विनिर्णय और इरादेपूर्वक-कार्य परिणाम शामिल हैं। ये प्रस्तावित एप्लिकेशन क्षेत्र हैं। नियमित लॉग में बैक-सॉल्वर टोकन, वास्तविक समर्थन-संदेश सामग्री या प्रमाणीकरण नहीं संग्रहीत करें।
जब परीक्षण विफल होता है, तो अंतिम सफल चरण को बरकरार रखें। "विजेट मैपिंग अनुपलब्ध", "सॉल्वर एक त्रुटि लौटाता है", और "एप्लिकेशन उत्तर अस्वीकृत करता है" के लिए अलग-अलग समाधान आवश्यक हैं। इस चरण इतिहास एक अस्पष्ट CAPTCHA त्रुटि की तुलना में अधिक उपयोगी जांच प्रदान करता है।
एक उपयोगी परीक्षण मैट्रिक्स विजेट क्रम और जीवन चक्र को बदलता है जबकि इरादेपूर्वक फॉर्म ऑपरेशन स्थिर रहता है।
| स्वामित्व-पृष्ठ परीक्षण मामला | अपेक्षित वर्कफ्लो व्यवहार |
|---|---|
| समीक्षा विजेट समर्थन विजेट से पहले दिखाई देता है | एजेंट अभी भी समर्थन फॉर्म के विजेट का चयन करता है |
| दोनों फॉर्म एक साइट कुंजी साझा करते हैं | फॉर्म संबंध चयन का निर्धारण करता है |
| समर्थन डायलॉग समाधान के दौरान बंद हो जाता है | परिणाम अब आवश्यक नहीं है के रूप में रिकॉर्ड किया जाता है |
| समर्थन विजेट समाधान के दौरान फिर से लोड हो जाता है | पुराना परिणाम बदले वाले के लिए निर्देशित नहीं किया जाता है |
| असंबंधित विजेट एक त्रुटि रिपोर्ट करता है | एजेंट अपने इरादेपूर्वक ऑपरेशन को बदलता नहीं है |
| इरादेपूर्वक फॉर्म के पास कोई अद्वितीय विजेट मैपिंग नहीं है | सॉल्वर अनुरोध से पहले वर्कफ्लो रुक जाता है |
| बैकएंड द्वारा सबमिट किया गया उत्तर अस्वीकृत कर दिया जाता है | परीक्षण पुष्टि विफलता के रूप में रिपोर्ट करता है, न कि सफलता |
संयोजन के साथ नियंत्रित फिक्सचर्स के साथ चलाएं, फिर अनुमति दिए गए वास्तविक एंटीग्रेशन के अलग से परीक्षण करें। फिक्सचर परीक्षण स्थानीय रूटिंग व्यवहार स्थापित करते हैं; वे बाहरी सॉल्वर या प्रदाता पुष्टि सेवा के काम करने के बारे में साबित नहीं करते।
इस समस्या के बारे में एक साथ कई स्वतंत्र सॉल्वर कार्य शुरू करने से अलग है। कई reCAPTCHA चुनौतियों के साथ निपटने के लिए अपना तरीका के लिए अस्तित्व में गाइड के अनुसार एक समान विधि का उपयोग करें। एक पृष्ठ पर कई विजेट होने पर, एक इरादेपूर्वक कार्य और इसके विशिष्ट विजेट के बीच संबंध बनाए रखना कठिन आवश्यकता है।
इस क्रम में वर्कफ्लो बनाएं: फॉर्म का चयन करें, इसके विजेट संबंध को बरकरार रखें, समर्थित सॉल्वर जानकारी चुनें, परिणाम रूट करें, और एप्लिकेशन के परिणाम की पुष्टि करें। जब इन स्वामित्व जांच अनुमति और परीक्षण योग्य हो जाती हैं, तो CapSolver के सॉल्वर चरण पर जोड़ें।
प्रश्न: क्या reCAPTCHA की पहचान एजेंट को यह बताती है कि कौन सा फॉर्म सबमिट करना है?
पहचान इरादेपूर्वक फॉर्म की पहचान नहीं करती है। एजेंट को किसी भी समाधान या कुछ भी सबमिट करने से पहले एप्लिकेशन के कार्य विस्तार और स्पष्ट फॉर्म-विजेट संबंध की आवश्यकता होती है।
प्रश्न: क्या एक ही पृष्ठ पर दो विजेट एक साइट कुंजी साझा कर सकते हैं?
एक पृष्ठ विजेट के बीच एक ही एंटीग्रेशन कॉन्फ़िगरेशन का उपयोग कर सकता है, इसलिए एक साइट कुंजी को एक फॉर्म-प्रयास आईडी के रूप में नहीं माना जाना चाहिए। विजेट उदाहरण और स्वामित्व फॉर्म मैपिंग के साथ इसका उपयोग करें।
प्रश्न: क्या मैं पहला CAPTCHA जानकारी रिकॉर्ड चुन सकता हूं?
केवल तभी पहला रिकॉर्ड चुनें जब स्वामित्व पृष्ठ मैपिंग यह साबित करता है कि यह इरादेपूर्वक विजेट है। सूची में स्थिति स्वामित्व की गारंटी नहीं करती है, और पृष्ठ बदलाव यह निर्धारित कर सकते हैं कि कौन सा घटक पहले दिखाई देता है।
प्रश्न: क्या एआई एजेंट खोजे गए सभी CAPTCHA को हल करना चाहिए?
एजेंट केवल अनुमति वाले कार्य के लिए आवश्यक समर्थित चुनौती को हल करना चाहिए। असंबंधित विजेट उस कार्य के बाहर रहते हैं, भले ही वे एक ही पृष्ठ पर दिखाई दे रहे हों।
प्रश्न: जब समाधान के दौरान पृष्ठ बदल जाता है तो क्या होना चाहिए?
वर्कफ्लो को परिणाम का उपयोग करने से पहले पृष्ठ और विजेट संबंध की पुनः जांच करना चाहिए। यदि मूल घटक बदल गया या प्रयास समाप्त हो गया, तो परिणाम को अविशिष्ट रूप से रिकॉर्ड करें और उस प्रयास को अन्यथा रूट करने के बजाय रोक दें।
चयन करें AI एजेंट्स, स्क्रिप्ट्स, और हाइब्रिड वेब ऑटोमेशन कार्य अनिश्चितता, परीक्षणीयता, लागत, और विश्वसनीय कार्यान्वयन के लिए आवश्यक नियंत्रणों पर।

PyPI से CapSolver MCP Server स्थापित करें और संगत कृत्रिम बुद्धिमत्ता एजेंट के लिए मॉडल संदर्भ प्रोटोकॉल के माध्यम से अधिकृत CAPTCHA प्रबंधन के लिए पांच उपकरण प्रदान करें।
