इसके लिए captcha solver:
cURL
Job को फ़ेल होने देने के बजाय run के अंदर ही challenge को हल करें। एक काम करता Shell उदाहरण, और वे तीन बातें जो तय करती हैं कि आपका token स्वीकार होगा या नहीं।
curl -X POST "https://api.captchano.com/v1/solve?wait=60" \
-H "Authorization: Bearer cn-YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "recaptcha_v2",
"sitekey": "6LcABC...",
"url": "https://example.com/login",
"proxy": "http://user:pass@host:port"
}'
# 200 OK
# { "id": "slv_…", "status": "ready",
# "solution": { "token": "03AGdBq25S…" },
# "cost": "0.00598", "solveTime": 18.4 }Token स्वीकार होगा या नहीं, यह किन बातों पर निर्भर है
- अपना proxy साथ भेजें। Token उसी exit IP के पीछे बनना चाहिए जो उसे submit करता है। Session-graded सिस्टम के लिए यह अनिवार्य है, केवल ऑप्टिमाइज़ेशन नहीं।
- User agent मिलाएँ। Turnstile और कई anti-bot सिस्टम token को एक user agent से बाँध देते हैं। हम इस्तेमाल किया गया user agent लौटाते हैं ताकि आप उसे बिल्कुल वैसा ही दोहरा सकें।
- देर से request करें। Token लगभग 120 सेकंड में expire हो जाते हैं। जब आप submit करने के लिए तैयार हों, तभी token माँगें।
Blocking या polling
उदाहरण में ?wait=60 का इस्तेमाल है, इसलिए call पूरा solve लौटाता है और आपका cURL स्टेप सीधा-सादा रहता है। अगर आप कनेक्शन खुला नहीं रखना चाहते, तो यह parameter हटा दें, लौटाया गया id रख लें, और हर पाँच सेकंड में GET /v1/task/{id} poll करें। जिस token का आपने भुगतान किया है वह दस मिनट तक प्राप्त किया जा सकता है, इसलिए कनेक्शन टूटने पर भी आपका solve बेकार नहीं जाता।
लागत
हर सफल reCAPTCHA v2 solve के लिए $0.00598, असफल solve पर कभी चार्ज नहीं। हर challenge टाइप के लिए कीमतें देखें, या पूरे request फ़ॉर्मेट के लिए API reference देखें।
cURL में solve कैसे फ़िट होता है
API सादा HTTPS और JSON है, इसलिए कोई भी कोड लिखने से पहले एक solve को शुरू से अंत तक देखने का सबसे तेज़ तरीका cURL है।
- 01एक key बनाएँ
Dashboard में एक API key बनाएँ। यह cn- से शुरू होती है।
- 02एक solve भेजें
Authorization: Bearer header के साथ type, sitekey और url वाला JSON /v1/solve?wait=60 पर POST करें।
- 03Response पढ़ें
status, solution.token, cost और solveTime एक ही JSON object में वापस आते हैं।
- 04चाहें तो poll करें
?wait हटा दें और इसके बजाय हर कुछ सेकंड में GET /v1/task/{id} poll करें।
Token को पेज में कैसे डालें
आप JSON response से token कॉपी करके उस फ़ॉर्म फ़ील्ड या request में डालते हैं जो आपका अपना client भेजता है।
इंटीग्रेशन आमतौर पर कहाँ गलत होते हैं
Content-Type: application/json भेजें, वरना body parse नहीं होगी।
JSON को single quotes में रखें ताकि shell उसके अंदर कुछ भी expand न करे।
cURL captcha: अक्सर पूछे सवाल
क्या मुझे SDK की ज़रूरत है?
नहीं। CaptchaNo एक सादा REST API है। किसी भी भाषा का कोई भी HTTP client काम करता है, और इसे आज़माने का सबसे आसान तरीका cURL है।
अपना बैलेंस कैसे चेक करूँ?
उसी Authorization header के साथ GET /v1/balance को call करें। Dashboard में भी बैलेंस, usage और हर solve दिखता है।
असफल solve क्या लौटाता है?
failed status के साथ एक error code। असफल solves बिल नहीं होते, इसलिए आप बेझिझक retry कर सकते हैं।
मैं नतीजे का कितनी देर इंतज़ार कर सकता हूँ?
wait parameter 120 सेकंड तक block करता है। ज़्यादातर solves इससे काफ़ी पहले लौट आते हैं; अगर आपका client इतनी देर कनेक्शन नहीं रख सकता तो polling का इस्तेमाल करें।
उपयोगी गाइड
बनाने के लिए तैयार?
3 दिन के free trial से शुरू करें, फिर ट्रैफ़िक बढ़ने के साथ हर सफल solve के हिसाब से भुगतान करें। Trial के लिए कार्ड की ज़रूरत नहीं।