
Lucas Mitchell
Automation Engineer

ocr_gif उदाहरण लौटाता है।createTask से सीधे स्वीकृति परिणाम लौटाते हैं; डिफ़ॉल्ट रूप से पॉलिंग चरण न जोड़ें।ImageToTextTask और VisionEngine छवि स्वीकृति कार्य परिवार हैं जिनमें अलग-अलग अनुरोध क्षेत्र और मॉड्यूल-विशिष्ट परिणाम होते हैं। सही चयन उस चुनौती के आकार पर निर्भर करता है जिसे आपके अधिकृत अनुप्रयोग द्वारा समर्थित किया जाता है और अगले चरण में आपके अनुप्रयोग द्वारा आवश्यक उत्तर पर निर्भर करता है।
CapSolver में, सही परिवार का चयन करना शब्द के बजाय अधिक महत्वपूर्ण है। एक पार्सर जो पहचाने गए अक्षरों की उम्मीद करता है, एक दूरी या कोण को सुरक्षित रूप से उपयोग नहीं कर सकता है। विपरीत रूप से, जब अनुप्रयोग के अगले चरण में केवल एक पहचाने गए स्ट्रिंग की तुलना एक ज्ञात परीक्षण सेट के साथ की जाती है तो ज्यामितीय उत्तर आवश्यक नहीं है।
ऑप्टिकल चरित्र पहचान, या OCR, छवि से पाठ निकालता है। यह एक CAPTCHA पहचान श्रेणी की समझ में मदद करता है, लेकिन "छवि CAPTCHA" OCR से अधिक व्यापक है। एक चुनौती अक्षरों, स्थिति या अन्य समर्थित दृश्य संबंध के लिए पूछ सकती है।
इस गाइड में दस्तावेज़ी संविदाओं और मूल्यांकन विकल्पों की तुलना की गई है। इसके परिदृश्य में स्वामित्व वाले CAPTCHA फिक्सचर और अनुमति वाले QA शामिल हैं। यह किसी भी वेबसाइट के साथ अनुकूलन के लिए एक सामान्य स्क्रिप्ट प्रस्तुत नहीं करता है या यह दावा नहीं करता है कि एक पहचान परिणाम ब्राउज़र चुनौती को खुद के आधार पर पूरा करता है।
कार्य संविदा निर्धारित करती है कि आप कौन सी छवि डेटा भेजते हैं और परिणाम की व्याख्या कैसे करते हैं।
| तुलना | ImageToTextTask | VisionEngine |
|---|---|---|
| मुख्य अनुरोध छवि क्षेत्र | body |
image |
| कार्य चयन | ImageToTextTask, साथ में दस्तावेज़ी मॉड्यूल विकल्प |
VisionEngine और एक समर्थित नामित module |
| अपेक्षित आउटपुट | पाठ या मॉड्यूल-विशिष्ट उत्तर | मॉड्यूल-विशिष्ट पाठ या ज्यामितीय परिणाम |
| परिणाम वितरण | सीधा createTask उत्तर | सीधा createTask उत्तर |
| मुख्य एंटीग्रेशन प्रश्न | क्या चयनित स्वीकृति मोड अपेक्षित उत्तर के साथ मेल खाता है? | क्या ठीक मॉड्यूल छवि आकार और आउटपुट संविदा के साथ मेल खाता है? |
| असुरक्षित मान्यता | प्रत्येक उत्तर एक पाठ स्ट्रिंग है | प्रत्येक छवि के लिए एक ही मॉड्यूल या पार्सर का उपयोग किया जा सकता है |
ImageToTextTask संदर्भ में body में Base64 छवि सामग्री का वर्णन किया गया है, बिना नए लाइन या डेटा-URI प्रीफिक्स के। इसके उदाहरण text के बजाय मॉड्यूल-विशिष्ट answers के बीच अंतर करते हैं। एक चयनित मॉड्यूल के परिणाम को पढ़ें, बजाय एकल स्ट्रिंग में सभी सफल परिणामों को समाप्त करने के।
VisionEngine संदर्भ में नामित मॉड्यूल का वर्णन किया गया है: उदाहरणों में slider_1 दूरी लौटाता है, घूर्णन मॉड्यूल कोण लौटाते हैं, और botdeflector बिंदु लौटाता है। ocr_gif उदाहरण पाठ लौटाता है। सामान्य सं prop तालिका imageBackground को आवश्यक बताती है, जबकि कई मॉड्यूल उदाहरण इसे छोड़ देते हैं। इस अंतर को ठीक मॉड्यूल उदाहरण के साथ समाधान करें और अपनाने से पहले कोई भी अस्पष्टता की पुष्टि करें।
इन उदाहरणों ने समर्थित संविदाओं को स्थापित किया है, न कि सामान्य छवि समझ। एक कार्य नाम एक मॉड्यूल बनाने, एक मुक्त-फॉर्म प्रॉम्प्ट जोड़ने या चयनित मॉड्यूल द्वारा दस्तावेज़ी नहीं किए गए प्रतिक्रिया प्रकार की उम्मीद करने की अनुमति नहीं देता है।
जब समर्थित चुनौती का उपयोगी उत्तर पहचाने गए पाठ होता है और दस्तावेज़ी मॉड्यूल आपके इनपुट के अनुरूप होता है, तो ImageToTextTask से शुरू करें।
मान लीजिए आपकी टीम एक पुराने संपर्क फॉर्म के लिए जिम्मेदार है और अपने परीक्षण सेट के अक्षर छवियों के साथ अनुमति है। मूल्यांकन प्रश्न विशिष्ट है: क्या पहचान मार्ग फिक्सचर द्वारा अपेक्षित अक्षर लौटाता है? आप फिक्सचर के साथ लौटे स्ट्रिंग की तुलना कर सकते हैं बिना ब्राउज़र निर्देशांक या निर्देशक गति के उपयोग के बिना।
अपने अनुप्रयोग के पाठ नियमों की परिभाषा करें बिना समाधान के मूल्यांकन के बाद। क्या आपका अपना फॉर्म बड़े अक्षर और छोटे अक्षर के बीच अंतर करता है? क्या यह शुरूआती शून्य को बरकरार रखता है? क्या यह अंतराल स्वीकार करता है? ये अपने अनुप्रयोग के गुण हैं जिनका आप नियंत्रण है। इन्हें एक सामान्य परिणाम-साफ करने वाले कार्यक्रम द्वारा चुपके से बदल नहीं जाना चाहिए।
उदाहरण के लिए, एक "007A" लेबल वाला फिक्सचर पूरे तुलना के दौरान एक स्ट्रिंग बना रहे। इस परिणाम को एक संख्या के रूप में व्यवहार करना अपने अनुप्रयोग पार्सर के लिए एक बचाव योग्य त्रुटि बना देगा। यह एक संदर्भ पुष्टि उदाहरण है, न कि एक रिपोर्ट किया गया समाधान परिणाम।
खाली परिणाम और गलत परिणाम आकार को अलग-अलग रखें। अपेक्षित क्षेत्र की अनुपस्थिति एक एंटीग्रेशन समस्या है जिसकी जांच करनी है। सही आकार वाला लेकिन गलत उत्तर स्वीकृति मूल्यांकन में शामिल होता है। दोनों को एक "सटीकता" संख्या में मिलाकर यह छिपा देता है कि क्या कार्य चयन या छवि स्वीकृति को ध्यान में रखने की आवश्यकता है।
जब दस्तावेज़ी मॉड्यूल चुनौती के आकार के साथ मेल खाता है और उसके द्वारा लौटाए गए संरचना अपने अनुप्रयोग के लिए जानकारी होती है, तो VisionEngine का मूल्यांकन करें।
एक नियंत्रित छवि परीक्षण के लिए, एक कोण और बिंदु सूची अलग दावों का प्रतिनिधित्व करते हैं। एक कोण की तुलना फिक्सचर के अपेक्षित अभिमुखीकरण के साथ की जा सकती है। एक बिंदु सूची को अपने अपने अर्थात्मक नियमों की आवश्यकता होती है। दोनों में से किसी भी एक को अक्षर पहचान के लिए लिखे गए पार्सर में पारित नहीं करना चाहिए।
एक मॉड्यूल-विशिष्ट अनुवादक तैयार करें जिसकी जांच बिना किसी अस्पष्टता के करें: दस्तावेज़ी परिणाम आकार स्वीकार करें, इसकी पुष्टि करें और अपने स्वामित्व अनुप्रयोग को अर्थात्मक उत्तर हस्तांतरित करें। इस अनुवादक को असंबंधित ब्राउज़र नियंत्रण के चलाने का निर्णय नहीं लेना चाहिए। स्वीकृति अर्थात्मकता को अलग रखने से स्टोर्ड फिक्सचर के साथ विफलता को फिर से उत्पन्न करना आसान हो जाता है।
OCR मॉड्यूल की उपस्थिति भी एक सरल नियम "पाठ हमेशा ImageToTextTask का अर्थ है" को रोकती है। एनिमेटेड टेक्स्ट इनपुट के लिए, चयन करने से पहले दस्तावेज़ी समर्थित फॉर्मेट और मॉड्यूल की जांच करें। उत्तर आकार अकेले यह निर्धारित नहीं करता कि दो कार्य एक ही इनपुट स्वीकार करते हैं या उन पर समान रूप से काम करते हैं।
यदि कोई भी दस्तावेज़ी मॉड्यूल चुनौती के साथ मेल नहीं खाता है, तो इसे अस्वीकृत या अनिर्णीत रूप से दर्ज करें। एक API द्वारा अपने भेजे गए पैकेट को स्वीकार करने तक अनुरोध लेबल बदलना एक विश्वसनीय मूल्यांकन विधि नहीं है। एक अनुरोध के स्वीकृति का अर्थ यह नहीं है कि उसके द्वारा अनुकूलित मॉडल छवि के अनुरूप है।
CapSolver बोनस कोड का उपयोग करें
तत्काल अपने स्वचालन बजट को बढ़ाएं!
CapSolver खाता में अपने खाते को भरते समय बोनस कोड CAP26 का उपयोग करें ताकि प्रत्येक भरोसे पर 5% बोनस मिले — कोई सीमा नहीं।
अब अपने CapSolver डैशबोर्ड में इसे दर्ज करें
छवि तैयारी को प्रत्येक प्रतियोगी कार्य की आवश्यकता वाली साक्ष्य को संरक्षित करना चाहिए, ताकि मूल्यांकन कार्य के अनुरूपता को मापे बिना अकस्मात तैयारी अंतरों के कारण न हो।
Base64 बाइट्स का एक प्रतिनिधित्व है। RFC 4648 Base64 विनिर्देश इस कोडिंग को परिभाषित करता है; यह यह नहीं स्थापित करता कि संकोड़ित फ़ाइल एक स्वीकृति मॉड्यूल के लिए सही छवि है। एक पैकेट सिंटैक्टिकल रूप से संकोड़ित हो सकता है और अभी भी एक पुरानी चुनौती, गलत कट, या अस्वीकृत छवि फॉर्मेट के साथ हो सकता है।
प्रत्येक स्वामित्व फिक्सचर के लिए, मूल छवि के संदर्भ को बरकरार रखें और जमा करने से पहले किए गए किसी भी रूपांतरण को नोट करें। उदाहरणों में आकार में बदलाव, एनिमेशन को तलाशना, या कट को बदलना शामिल है। सभी कार्य परिवारों के लिए एक ही रूपांतरण की चुपके से लागू करने से बचें: एनिमेशन फ्रेम हटाना एक एनिमेटेड इनपुट के लिए तैयार किए गए कार्य के लिए उपलब्ध जानकारी को बदल सकता है।
यदि एक मूल्यांकन मॉड्यूल को फ्रंटग्राउंड और बैकग्राउंड छवि की आवश्यकता होती है, तो यह सुनिश्चित करें कि वे एक ही फिक्सचर अस्तित्व के साथ हैं। एक अन्य रीफ्रेश से फ्रंटग्राउंड के साथ एक अन्य से बैकग्राउंड का संयोजन एक इनपुट असंगति बना देगा। इस विफलता को एक वैध मॉड्यूल की असमायोजितता के रूप में गिना न जाए।
संश्लेषित या अनुमोदित परीक्षण छवियों का उपयोग करें जिनमें असंबंधित व्यक्तिगत जानकारी न हो। एक पूरे समर्थन पृष्ठ की स्क्रीनशॉट चुनौती से अधिक शामिल हो सकती है। अनुमति दिए गए इनपुट तक सीमित भेजी गई छवि टेस्ट को स्पष्ट बनाती है और अनावश्यक डेटा उत्पादन कम करती है।
निर्देशांक परिणाम अपने अनुप्रयोग के सही उपयोग के लिए छवि और लेआउट रेफरेंस फ्रेम के बारे में सहमति के आधार पर आवश्यक होते हैं।
एक मूल छवि के साथ मापा बिंदु ब्राउज़र व्यूपोर्ट में एक बिंदु नहीं होता है। ब्राउज़र बाउंडिंग-रेक्टेंगल परिभाषा व्यूपोर्ट के सापेक्ष एक आयत का वर्णन करती है और एक तत्व के सीमा और पैडिंग के साथ शामिल होती है। यह एक छवि के वास्तविक आयामों के साथ एक बराबर ताकत नहीं है।
एक स्वामित्व QA हार्नेस में, निर्देशांक अर्थात्मकता को अलग घटक के रूप में परीक्षण करें। फिक्सचर के आयाम, समाधान द्वारा प्रस्तुत आयाम और अनुप्रयोग प्रतिनिधित्व के बारे में रिकॉर्ड करें। यदि इन प्रतिनिधित्व अलग हैं, तो अपने अनुप्रयोग के लिए उपयुक्त एक स्पष्ट, परीक्षण किए गए मैपिंग की आवश्यकता होती है।
एक सफल स्वीकृति उत्तर का उपयोग इस मैपिंग के सही होने के बारे में साक्ष्य के रूप में उपयोग न करें। एक उपयोगी परीक्षण एक लेबल वाले फिक्सचर के साथ अर्थात्मक परिणाम की तुलना कर सकता है जब कोई ब्राउज़र क्रिया नहीं होती है। दूसरा परीक्षण यह सत्यापित कर सकता है कि स्वामित्व घटक इस अर्थात्मक परिणाम को इच्छित तरीके से उपयोग करता है।
इस अलगाव के कारण अद्यतन चुनौतियां भी मदद करते हैं। यदि चुनौती चल रही है जब स्वीकृति चल रही है, तो उत्तर अपने मूल फिक्सचर से संबंधित है। आपके अनुप्रयोग को इस अद्यतन छवि के साथ उत्तर का उपयोग करने के बजाय इस अस्पष्ट संबंध को अस्वीकृत करना चाहिए।
एक न्यायसंगत तुलना समर्थित चुनौती परिवार द्वारा वर्गीकृत परिणामों के समूह और वैध API प्रतिक्रियाओं के बजाय अपने अनुप्रयोग के परिणामों की गणना करती है।
एक प्रतिनिधि, अनुमति वाले फिक्सचर सेट से शुरू करें। अपने अनुप्रयोग द्वारा वास्तव में उत्पन्न छवि विविधताओं को शामिल करें, जैसे कि इसके सामान्य आयाम और अपेक्षित अक्षर श्रेणी। एक लेबल किए गए होल्डआउट सेट को आवश्यकता पर बचाएं ताकि पूर्व प्रसंस्करण के संशोधन के बारे में केवल उन्हीं उदाहरणों पर न जांचा जाए जिन्होंने उन्हें प्रेरित किया।
इन श्रेणियों को अलग-अलग रूप से रिकॉर्ड करें:
| मूल्यांकन श्रेणी | यह क्या बताता है |
|---|---|
| इनपुट अस्वीकृत | अनुरोध या फॉर्मेट की आवश्यकता है |
| अपेक्षित प्रतिक्रिया आकार लौटाया गया | पार्सर संविदा संतुष्ट है |
| उत्तर फिक्सचर के साथ मेल खाता है | स्वीकृति फिक्सचर के मानदंड के अनुरूप है |
| स्वामित्व अनुप्रयोग उत्तर को स्वीकार करता है | एंटीग्रेशन परिणाम के इच्छित अर्थ को बरकरार रखता है |
| परिणाम फिक्सचर बदले जाने के बाद आता है | समय या जीवन चक्र ने परिणाम का अवैध बना दिया |
असंबंधित कार्यों के साथ एक ही शीर्षक सटीकता स्कोर की तुलना न करें। एक पाठ फिक्सचर और एक ज्यामितीय फिक्सचर अलग आउटपुट परीक्षण करते हैं। जहां दो दस्तावेज़ी विकल्प वास्तव में एक ही इनपुट परिवार के अनुरूप होते हैं, फिक्सचर सेट और सफलता परिभाषा स्थिर रखें।
लागत के लिए, कुल मूल्यांकन खर्च की गणना उपयोगकर्ता अनुप्रयोग के लिए सफल, संबंधित परिणामों के साथ करें और इंजीनियरिंग कार्य की गणना करें। एक पार्सर जिसके लिए अक्सर हस्तक्षेप की आवश्यकता होती है, भले ही कार्य शुल्क छोटा हो, समय खो देता है। API के नाम अकेले कोई सामान्य कीमत या प्रदर्शन विजेता नहीं बनाते हैं।
ये मूल्यांकन सुझाव हैं, न कि बेंचमार्क परिणाम। अपने अनुमति वाले अनुप्रयोग पर इनका उपयोग करें जब आप किसी भी सटीकता, गति या बचत का दावा करते हैं।
एक कार्य-चयन सूची में समर्थित इनपुट, अपेक्षित उत्तर, डिलीवरी व्यवहार और अनुप्रयोग स्वीकृति परीक्षण की पहचान होनी चाहिए।
प्रत्येक समर्थित CAPTCHA परिवार के लिए, चयनित कार्य और मॉड्यूल, छवि तैयारी के नियम, अपेक्षित हल क्षेत्र, और यदि प्रतिक्रिया अन्य आकार में है तो क्या होता है, का वर्णन करें। जब आपके अनुप्रयोग की CAPTCHA कार्यक्षमता बदलती है तो इन मान्यताओं की समीक्षा करने के लिए एक मालिक नियुक्त करें।
स्वीकृति मूल्यांकन से सुलभता समीक्षा अलग रखें। W3C की CAPTCHA असुलभता के बारे में चर्चा चुनौती तकनीकों द्वारा बनाई गई बाधाओं की व्याख्या करती है। एक ऑटोमेटेड QA प्रवाह में एक समाधान जोड़ना सार्वजनिक फॉर्म के द्वारा एक उपलब्ध अनुभव प्रदान करने का प्रमाण नहीं है। साइट के मालिक को अपने उपयोगकर्ता विकल्पों के लिए उपयुक्त मूल्यांकन करना आवश्यक है।
अधिक व्यापक स्वीकृति स्तर के बारे में जानकारी के लिए, कस्टम CAPTCHA ऑटोमेशन के लिए छवि स्वीकृति API कैसे फिट होता है देखें। ठीक कार्य संविदा चुनने के लिए इस तुलना पर वापस आएं।
एक समर्थित CapSolver कार्य से शुरू करें, एक छोटा लेबल वाला परीक्षण सेट और एक पार्सर जो दस्तावेज़ी परिणाम बरकरार रखता है। प्रत्येक नए इनपुट परिवार के लिए अपने स्वयं के स्पष्ट स्वीकृति मानदंड होने के बाद ही कवरेज बढ़ाएं।
Q: क्या VisionEngine ImageToTextTask के स्थान पर है?
VisionEngine एक सार्वभौमिक प्रतिस्थापन नहीं है। चयनित मॉड्यूल द्वारा इनपुट का समर्थन और अपने अनुप्रयोग द्वारा अपेक्षित परिणाम के साथ विशिष्ट कार्य चुनें। अलग-अलग परिणाम आकार और छवि आवश्यकताओं के कारण अलग-अलग अनुवादक की आवश्यकता हो सकती है।
Q: क्या VisionEngine हमेशा निर्देशांक लौटाता है?
VisionEngine हमेशा निर्देशांक नहीं लौटाता है। इसके मॉड्यूल उदाहरणों में ज्यामितीय परिणाम और एक OCR उदाहरण है जो पाठ लौटाता है। टास्क-परिवार नाम से निगमित करने के बजाय, चयनित मॉड्यूल के परिणाम संविदा को पढ़ें।
Q: क्या इन कार्य परिवारों के लिए getTaskResult पॉलिंग की आवश्यकता है?
दोनों लिंक किए गए कार्य-परिवार संदर्भ एक सीधा createTask के माध्यम से परिणाम लौटाते हैं। एक साझा API वॉल्यूमर को इस सीधा समाधान को बरकरार रखना चाहिए बजाय ऑटोमेटिक रूप से पॉलिंग लूप शुरू करने के।
Q: क्या एक पहचाने गए उत्तर CAPTCHA फॉर्म काम करता है?
एक पहचाने गए उत्तर सही परिणाम रूटिंग या फॉर्म पूरा करने का प्रमाण नहीं है। फिक्सचर के साथ उत्तर की पुष्टि करें, फिर यह सत्यापित करें कि स्वामित्व अनुप्रयोग इसका उपयोग इच्छित चुनौती के लिए करता है और अपेक्षित परिणाम तक पहुंचता है।
CAPTCHA सॉल्वर पॉलिंग या वेबहुक्स चुनें कार्य स्थिति, प्राप्तकर्ता की आवश्यकताएं, परिणाम ताजगी, और दस्तावेज़ीकृत CapSolver API पूर्णता प्रवाह के उपयोग करके।

सीखें कैसे Selenium CAPTCHA एकीकरण में कुंजियों, सेशन, लॉग्स और परीक्षण वातावरण को सुरक्षित करें, अधिकृत स्वचालन के लिए व्यावहारिक समीक्षा जांच के साथ।
