CaptchaNo
[ AGENTS ]

Captcha solving
Browser Use agents के लिए

Challenge से टकराने वाले agent के toolset में ऐसा कुछ नहीं होता जो उसका जवाब दे सके, इसलिए वह अटक जाता है या मनगढ़ंत तरीके से आगे बढ़ने का दिखावा करता है। उसे tool के रूप में एक solver दें और रुकावट बस एक और call बन जाती है।

python · browser use
import time
import requests

CAPTCHANO_KEY = "cn-YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {CAPTCHANO_KEY}"}

def solve(task: dict) -> dict:
    """Block until solved; returns e.g. {"token": "...", "userAgent": "..."}."""
    r = requests.post(
        "https://api.captchano.com/v1/solve",
        params={"wait": 60},
        json=task,
        headers=HEADERS,
        timeout=75,
    )
    data = r.json()
    # A solve can outlast the 60 s wait: poll the task until it finishes.
    while data.get("status") in ("queued", "solving"):
        time.sleep(5)
        data = requests.get(
            f"https://api.captchano.com/v1/task/{data['id']}",
            headers=HEADERS,
            timeout=30,
        ).json()
    if data.get("status") != "ready":
        raise RuntimeError(data.get("error") or data)
    return data["solution"]

from browser_use import Agent, Tools, ActionResult

tools = Tools()

@tools.action("Solve a captcha that is blocking the current page")
def solve_captcha(kind: str, sitekey: str, url: str) -> ActionResult:
    solution = solve({"type": kind, "sitekey": sitekey, "url": url})
    return ActionResult(extracted_content=solution["token"])

agent = Agent(task="...", llm=llm, tools=tools)

Agents को ख़ास तौर पर इसकी ज़रूरत क्यों है

Challenge से टकराने वाला scraper ज़ोर से फ़ेल होता है और आप उसे ठीक कर देते हैं। Agent चुपचाप फ़ेल होता है: वह blocked पेज के बारे में तर्क करता है, एक विश्वसनीय-सा अगला कदम गढ़ता है, और ऐसी प्रगति की रिपोर्ट करता है जो कभी हुई ही नहीं। विफलता और बुरी है क्योंकि वह चुपचाप होती है। एक typed solver tool अस्पष्ट dead end को एक निश्चित result में बदल देता है जिस पर agent branch कर सके।

Tool क्या लौटाता है

  • एक token या cookie — challenge type के अनुसार। Session-graded सिस्टम एक cookie के साथ वह header set भी लौटाते हैं जिससे वह हासिल हुई।
  • इस्तेमाल किया गया user agent, ताकि agent submit करते समय उसे दोहरा सके।
  • Solve की लागत, ताकि बजट के तहत काम करने वाला agent आँख मूँदकर खर्च करने के बजाय उसका हिसाब रख सके।

Loop को सीमा में रखना

Agent को हर run के लिए solve बजट दें। हर response अपनी लागत बताता है, इसलिए खर्च किसी सीमा से ऊपर जाने पर supervisor loop को काट सकता है, बजाय इसके कि यह invoice पर पता चले। $0.00598 प्रति solve पर एक सामान्य agent run की लागत कुछ सेंट्स या उससे कम होती है, लेकिन असीमित retry loop फिर भी असीमित retry loop ही है।

Tool call को blocking रखें

उदाहरण ?wait=60 को call करते हैं, इसलिए tool एक ही स्टेप में तैयार token लौटाता है। Scripts से ज़्यादा यह agents के लिए मायने रखता है: "still solving" लौटाने वाला tool model को polling के बारे में सोचने पर मजबूर करता है, जो वह ठीक से नहीं कर पाता। अगर आपको ज़्यादा लंबी सीमा चाहिए, तो wait को 120 सेकंड तक बढ़ाएँ। हर challenge type के request फ़ॉर्मेट API reference में हैं।

[ यह कैसे फ़िट होता है ]

Browser Use में solve कैसे फ़िट होता है

Browser Use आपको custom actions register करने देता है। एक solve action मौजूदा पेज से sitekey पढ़ता है, token लेता है और उसे inject करता है, ताकि agent उसी browser में आगे बढ़ सके।

  1. 01
    एक action register करें

    Agent के tools में एक साफ़ description के साथ solve action जोड़ें।

  2. 02
    मौजूदा पेज पढ़ें

    Action, पहले से मौजूद browser session से sitekey और URL पढ़ता है।

  3. 03
    Solve और inject करें

    API को call करें, फिर token को उसी पेज में inject करें।

  4. 04
    नतीजा बताएँ

    एक छोटा result लौटाएँ ताकि agent को पता चले कि वह आगे बढ़ सकता है।

Token को पेज में कैसे डालें

यह action फ़ील्ड भरने और callback चलाने के लिए agent के अपने पेज में JavaScript चलाता है।

[ आम गलतियाँ ]

इंटीग्रेशन आमतौर पर कहाँ गलत होते हैं

अलग proxy

वही proxy भेजें जो agent का browser इस्तेमाल करता है, ताकि token और पेज एक ही IP से हों।

Agent का checkbox पर क्लिक करना

Action description में agent को बताएँ कि वह खुद widget पर क्लिक न करे; action इसे संभालता है।

[ FAQ ]

Browser Use captcha: अक्सर पूछे सवाल

क्या Browser Use खुद captcha solve करता है?

यह checkbox पर क्लिक कर सकता है, लेकिन image challenges का जवाब नहीं दे सकता, और automated browsers को अक्सर ये दिखाए जाते हैं। एक custom solve action नतीजे को निश्चित बना देता है।

क्या यह Browser Use cloud के साथ काम करता है?

Action को सिर्फ़ outbound HTTPS और पेज में JavaScript चलाने की क्षमता चाहिए, इसलिए यह वहाँ काम करता है जहाँ भी आपका agent चलता है।

Turnstile का क्या?

वही action, अलग type। Turnstile sitekey पढ़ें और type turnstile भेजें।

Agent को loop करने से कैसे रोकूँ?

हर task के solves गिनें और सीमा पार होने पर agent को रोक दें। अगर आप खर्च का बजट रखना चाहते हैं, तो हर result में उसकी लागत शामिल होती है।

[ आगे पढ़ें ]

उपयोगी गाइड

बनाने के लिए तैयार?

3 दिन के free trial से शुरू करें, फिर ट्रैफ़िक बढ़ने के साथ हर सफल solve के हिसाब से भुगतान करें। Trial के लिए कार्ड की ज़रूरत नहीं।

हमारे plans देखें
क्या आप एक AI agent हैं? सेटअप के विकल्प देखें →