
Rajinder Singh
Deep Learning Researcher

ब्राउज़र-यूज़ एक शक्तिशाली ओपन-सोर्स पाइथन लाइब्रेरी है जो AI एजेंटों को डेटा स्क्रैपिंग, फॉर्म भरने और दोहराव वाले ऑनलाइन कार्यों जैसे कार्यों को स्वचालित करने के लिए वेब ब्राउज़र को नियंत्रित करने में सक्षम बनाता है। ब्राउज़र ऑटोमेशन के लिए प्लेराइट का लाभ उठाकर और ओपनएआई के जीपीटी मॉडल जैसे बड़े भाषा मॉडल (एलएलएम) के साथ एकीकृत करके, ब्राउज़र-यूज़ उपयोगकर्ताओं को प्राकृतिक भाषा कमांड जारी करने की अनुमति देता है, जिससे यह व्यापक कोडिंग कौशल वाले लोगों के लिए भी सुलभ हो जाता है। हालाँकि, वेब ऑटोमेशन में एक आम चुनौती CAPTCHA का सामना करना है, जिन्हें स्वचालित स्क्रिप्ट को ब्लॉक करने के लिए डिज़ाइन किया गया है और ब्राउज़र-यूज़ के वर्कफ़्लो को बाधित कर सकता है।
CapSolver एक AI-संचालित सेवा है जो reCAPTCHA और Cloudflare Turnstile सहित विभिन्न प्रकार के CAPTCHA को हल करने में माहिर है। CapSolver को ब्राउज़र-यूज़ के साथ एकीकृत करके, आप यह सुनिश्चित कर सकते हैं कि आपके स्वचालन कार्य CAPTCHA को हल करने के लिए मैन्युअल हस्तक्षेप की आवश्यकता के बिना सुचारू रूप से आगे बढ़ें।
यह लेख CAPTCHA को प्रभावी ढंग से संभालने के लिए CapSolver को ब्राउज़र-यूज़ के साथ एकीकृत करने के तरीके पर चरण-दर-चरण मार्गदर्शिका प्रदान करता है। हम आवश्यक सेटअप को कवर करेंगे, एक पूर्ण कोड उदाहरण प्रदान करेंगे, और आपको आरंभ करने में मदद करने के लिए सर्वोत्तम अभ्यास साझा करेंगे।
Browser-use एक पाइथन लाइब्रेरी है जो प्राकृतिक भाषा निर्देशों के माध्यम से वेबसाइटों के साथ बातचीत करने की अनुमति देकर वेब ऑटोमेशन को सरल बनाता है। यह ब्राउज़र जैसे क्रोमियम, फ़ायरफ़ॉक्स और वेबकिट को नियंत्रित करने के लिए प्लेराइट का उपयोग करता है, और उपयोगकर्ता कमांड की व्याख्या और निष्पादित करने के लिए एलएलएम के साथ एकीकृत होता है। यह व्यापक कोड लिखे बिना जटिल कार्यों को स्वचालित करने के लिए ब्राउज़र-यूज़ को आदर्श बनाता है।
ब्राउज़र-यूज़ विभिन्न प्रकार के स्वचालन कार्यों का समर्थन करता है, जिनमें शामिल हैं:
इन कार्यों में अक्सर उन वेबसाइटों के साथ बातचीत करना शामिल होता है जो स्वचालित पहुँच को रोकने के लिए CAPTCHA को तैनात करती हैं, जिससे निर्बाध स्वचालन के लिए एक विश्वसनीय CAPTCHA-समाधान आवश्यक हो जाता है।
वेबसाइटें अक्सर स्वचालित पहुँच, स्पैम और दुर्भावनापूर्ण गतिविधियों को रोकने के लिए CAPTCHA जैसे एंटी-बॉट डिफेंस को तैनात करती हैं। ये CAPTCHA—जिन्हें चेकबॉक्स पर क्लिक करने या छवि पहेली को हल करने जैसी चुनौतियों के साथ मनुष्यों को बॉट्स से अलग करने के लिए डिज़ाइन किया गया है—वेब स्क्रैपिंग के लिए एक महत्वपूर्ण बाधा पेश करते हैं। ब्राउज़र-यूज़ के साथ कार्यों को स्वचालित करते समय, एक CAPTCHA का सामना करने से प्रक्रिया रुक सकती है, उपकरण को मैन्युअल हस्तक्षेप के बिना वांछित डेटा को स्क्रैप करने से रोक सकता है।
सामान्य CAPTCHA प्रकारों में शामिल हैं:
| CAPTCHA प्रकार | विवरण |
|---|---|
| reCAPTCHA v2 | उपयोगकर्ताओं को एक बॉक्स चेक करने या एक संकेत के आधार पर छवियों का चयन करने की आवश्यकता होती है। |
| reCAPTCHA v3 | उपयोगकर्ता व्यवहार का आकलन करने के लिए एक स्कोरिंग सिस्टम का उपयोग करता है, अक्सर उपयोगकर्ताओं के लिए अदृश्य होता है। |
| Cloudflare Turnstile | एक गोपनीयता-केंद्रित CAPTCHA विकल्प जो उपयोगकर्ता की बातचीत को कम करता है। |
वेब स्क्रैपिंग के लिए, यह एक गंभीर समस्या है: CAPTCHA विशेष रूप से उस प्रकार के स्वचालन को विफल करने के लिए अभिप्रेत हैं जिस पर ब्राउज़र-यूज़ वेबसाइटों से डेटा निकालने के लिए निर्भर करता है। इन बाधाओं को दरकिनार करने के तरीके के बिना, स्क्रैपिंग प्रयास रुक जाते हैं, जिससे स्वचालन अप्रभावी हो जाता है। सौभाग्य से, CapSolver के API को ब्राउज़र-यूज़ के साथ एकीकृत करने से एक शक्तिशाली समाधान मिलता है। CapSolver स्वचालित रूप से इन CAPTCHA को हल करता है, जिससे ब्राउज़र-यूज़ एंटी-बॉट डिफेंस से गुजर सकता है और बिना किसी रुकावट के सफलतापूर्वक डेटा को स्क्रैप कर सकता है। चाहे वह reCAPTCHA v2, या Cloudflare Turnstile को संभाल रहा हो, CapSolver यह सुनिश्चित करता है कि ब्राउज़र-यूज़ CAPTCHA चुनौतियों की एक विस्तृत श्रृंखला से निपट सकता है, जिससे यह संरक्षित वेबसाइटों से निर्बाध और कुशल डेटा निष्कर्षण के लिए एक आवश्यक उपकरण बन जाता है।
यह एकीकरण किसी के लिए भी एक गेम-चेंजर है जो CAPTCHA का उपयोग करने वाली साइटों से डेटा को स्क्रैप करना चाहता है, क्योंकि यह मैन्युअल इनपुट की आवश्यकता को समाप्त करता है और वेब स्क्रैपिंग प्रक्रिया को सुचारू रूप से चलाता रहता है।
CapSolver एक API प्रदान करता है जो उन्नत AI एल्गोरिदम का उपयोग करके विभिन्न CAPTCHA को हल कर सकता है। CapSolver को ब्राउज़र-यूज़ के साथ एकीकृत करने के लिए, आप @controller.action डेकोरेटर का उपयोग करके एक कस्टम एक्शन परिभाषित कर सकते हैं। यह क्रिया एक वेबपेज पर CAPTCHA का पता लगाएगी, आवश्यक जानकारी (जैसे, reCAPTCHA के लिए साइट कुंजी) निकालेगी, समाधान प्राप्त करने के लिए CapSolver के API को कॉल करेगी, और समाधान को पेज में इंजेक्ट करेगी।
browser-use, playwright, और requests।यहाँ एक कस्टम क्रिया का एक उदाहरण दिया गया है जो CapSolver के API का उपयोग करके reCAPTCHA v2 को हल करता है:
import requests
import time
from browser_use import Controller, ActionResult
from playwright.async_api import Page
CAPSOLVER_API_KEY = 'YOUR_CAPSOLVER_API_KEY'
@controller.action('Solve CAPTCHA', domains=['*'])
async def solve_captcha(page: Page) -> ActionResult:
if await page.query_selector('.g-recaptcha'):
site_key = await page.evaluate("document.querySelector('.g-recaptcha').getAttribute('data-sitekey')")
page_url = page.url
# CapSolver के साथ कार्य बनाएँ
response = requests.post('https://api.capsolver.com/createTask', json={
'clientKey': CAPSOLVER_API_KEY,
'task': {
'type': 'ReCaptchaV2TaskProxyLess',
'websiteURL': page_url,
'websiteKey': site_key,
}
})
task_id = response.json().get('taskId')
if not task_id:
return ActionResult(success=False, message='CapSolver कार्य बनाने में विफल')
# समाधान के लिए पोल करें
while True:
time.sleep(5)
result_response = requests.post('https://api.capsolver.com/getTaskResult', json={
'clientKey': CAPSOLVER_API_KEY,
'taskId': task_id
})
result = result_response.json()
if result.get('status') == 'ready':
solution = result.get('solution', {}).get('gRecaptchaResponse')
if solution:
await page.evaluate(f"document.getElementById('g-recaptcha-response').innerHTML = '{solution}';")
return ActionResult(success=True, message='CAPTCHA हल हो गया')
else:
return ActionResult(success=False, message='कोई समाधान नहीं मिला')
elif result.get('status') == 'failed':
return ActionResult(success=False, message='CapSolver CAPTCHA हल करने में विफल')
return ActionResult(success=False, message='कोई CAPTCHA नहीं मिला')
यह स्निपेट एक कस्टम क्रिया को परिभाषित करता है जो reCAPTCHA v2 तत्व की जांच करता है, साइट कुंजी निकालता है, CapSolver के साथ एक कार्य बनाता है, समाधान के लिए पोल करता है, और टोकन को पेज में इंजेक्ट करता है।
नीचे एक पूर्ण कोड उदाहरण दिया गया है जो दर्शाता है कि CAPTCHA को हल करने के लिए CapSolver को ब्राउज़र-यूज़ के साथ कैसे एकीकृत किया जाए।
सुनिश्चित करें कि आपके पास आवश्यक पैकेज स्थापित हैं:
pip install browser-use playwright requests
playwright install
अपने पर्यावरण को आवश्यक API कुंजी के साथ सेट करें। एक .env फ़ाइल बनाएँ जिसमें आपकी OpenAI और CapSolver API कुंजी हों:
OPENAI_API_KEY=your_openai_api_key
CAPSOLVER_API_KEY=your_capsolver_api_key
निम्नलिखित सामग्री के साथ एक पाइथन स्क्रिप्ट बनाएँ:
import os
import asyncio
import requests
from dotenv import load_dotenv
from browser_use import Agent, Controller, ActionResult
from browser_use.browser import BrowserSession
from browser_use.llm import ChatOpenAI
from playwright.async_api import Page
# .env फ़ाइल से पर्यावरण चर लोड करें
load_dotenv()
CAPSOLVER_API_KEY = os.getenv('CAPSOLVER_API_KEY')
controller = Controller()
@controller.action('Solve CAPTCHA', domains=['*'])
async def solve_captcha(page) -> ActionResult:
if await page.query_selector('.g-recaptcha'):
site_key = await page.evaluate("document.querySelector('.g-recaptcha').getAttribute('data-sitekey')")
page_url = page.url
response = requests.post('https://api.capsolver.com/createTask', json={
'clientKey': CAPSOLVER_API_KEY,
'task': {
'type': 'ReCaptchaV2TaskProxyLess',
'websiteURL': page_url,
'websiteKey': site_key,
}
})
task_id = response.json().get('taskId')
print(task_id)
if not task_id:
return ActionResult(success=False, message='CapSolver कार्य बनाने में विफल')
while True:
await asyncio.sleep(5)
result_response = requests.post('https://api.capsolver.com/getTaskResult', json={
'clientKey': CAPSOLVER_API_KEY,
'taskId': task_id
})
result = result_response.json()
print(f"CAPTCHA परिणाम स्थिति: {result.get('status')}")
if result.get('status') == 'ready':
solution = result.get('solution', {}).get('gRecaptchaResponse')
print(f"CAPTCHA समाधान: {solution}")
if solution:
print("CAPTCHA समाधान सबमिट कर रहा हूँ...")
# CAPTCHA टोकन के लिए दोनों संभावित इनपुट फ़ील्ड आज़माएँ
await page.evaluate(f"""
// मानक g-recaptcha-response फ़ील्ड आज़माएँ
var gRecaptchaResponse = document.getElementById('g-recaptcha-response');
if (gRecaptchaResponse) {{
gRecaptchaResponse.innerHTML = '{solution}';
var event = new Event('input', {{ bubbles: true }});
gRecaptchaResponse.dispatchEvent(event);
}}
// recaptcha-token फ़ील्ड भी आज़माएँ
var recaptchaToken = document.getElementById('recaptcha-token');
if (recaptchaToken) {{
recaptchaToken.value = '{solution}';
var event = new Event('input', {{ bubbles: true }});
recaptchaToken.dispatchEvent(event);
}}
""")
# टोकन के संसाधित होने के लिए कुछ समय प्रतीक्षा करें
await asyncio.sleep(2)
print("टोकन सफलतापूर्वक इंजेक्ट किया गया! CAPTCHA हल हो गया।")
# विधि 2: सही चयनकर्ता का उपयोग करके सबमिट बटन पर सीधे क्लिक करें
print("अब सबमिट बटन पर क्लिक कर रहा हूँ...")
try:
# आपके द्वारा प्रदान किए गए विशिष्ट बटन चयनकर्ता का उपयोग करें
submit_button = await page.query_selector("body > main > form > fieldset > button")
if submit_button:
await submit_button.click()
print("✅ सबमिट बटन पर सफलतापूर्वक क्लिक किया गया!")
else:
print("❌ सबमिट बटन नहीं मिला!")
return ActionResult(success=False, message='सबमिट बटन नहीं मिला')
except Exception as e:
print(f"❌ सबमिट बटन पर क्लिक करने में त्रुटि: {e}")
return ActionResult(success=False, message=f'सबमिट करते समय त्रुटि: {e}')
print("CAPTCHA हल हो गया और फॉर्म सफलतापूर्वक सबमिट हो गया!")
return ActionResult(success=True, message='CAPTCHA हल हो गया और फॉर्म सबमिट हो गया')
else:
return ActionResult(success=False, message='कोई समाधान नहीं मिला')
elif result.get('status') == 'failed':
return ActionResult(success=False, message='CapSolver CAPTCHA हल करने में विफल')
return ActionResult(success=False, message='कोई CAPTCHA नहीं मिला')
llm = ChatOpenAI(model="gpt-4o-mini")
async def main():
try:
print("🚀 ब्राउज़र-यूज़ CAPTCHA सॉल्वर एजेंट शुरू कर रहा हूँ...")
# CAPTCHA को हल करने और फॉर्म सबमिट करने के लिए सरल कार्य निर्देश
task = """https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php पर जाएँ और CAPTCHA को हल करें, फिर फॉर्म सबमिट करें।
चरण 1: reCAPTCHA डेमो पेज पर जाएँ: https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php
चरण 2: पेज के पूरी तरह से लोड होने तक प्रतीक्षा करें। आपको इनपुट फ़ील्ड और reCAPTCHA चेकबॉक्स वाला एक फॉर्म दिखाई देना चाहिए।
चरण 3: reCAPTCHA तत्व देखें (आमतौर पर एक चेकबॉक्स जो "मैं रोबोट नहीं हूँ" या ऐसा ही कुछ कहता है)।
चरण 4: CAPTCHA को स्वचालित रूप से हल करने और फॉर्म सबमिट करने के लिए "solve_captcha" क्रिया का उपयोग करें।
चरण 5: अंतिम परिणाम की रिपोर्ट करें।
नोट: solve_captcha क्रिया CAPTCHA को हल करने और फॉर्म को स्वचालित रूप से सबमिट करने दोनों को संभालेगी।"""
# पहले ब्राउज़र सत्र बनाएँ
browser_session = BrowserSession()
# ब्राउज़र सत्र के साथ एजेंट बनाएँ
agent = Agent(
task=task,
llm=llm,
controller=controller,
browser_session=browser_session
)
print("📱 CAPTCHA सॉल्वर एजेंट चला रहा हूँ...")
result = await agent.run()
print(f"✅ एजेंट पूर्ण: {result}")
# परिणाम देखने के लिए ब्राउज़र खुला रखें
input('ब्राउज़र बंद करने के लिए एंटर दबाएँ...')
await browser_session.close()
except Exception as e:
print(f"❌ त्रुटि: {e}")
if __name__ == "__main__":
asyncio.run(main())
| चरण | विवरण |
|---|
pip install browser-use playwright requests का उपयोग करके browser-use, playwright, और requests स्थापित करें। आवश्यक ब्राउज़र स्थापित करने के लिए playwright install चलाएँ। |.env फ़ाइल बनाएँ ताकि क्रेडेंशियल सुरक्षित रूप से संग्रहीत हो सकें। |@controller.action डेकोरेटर का उपयोग करके solve_captcha को परिभाषित करें, जो एक reCAPTCHA v2 तत्व की जाँच करता है, साइट कुंजी निकालता है, CapSolver के API को कॉल करता है, और पृष्ठ में समाधान इंजेक्ट करता है। |Controller उदाहरण बनाएँ, कस्टम क्रिया को परिभाषित करें, LLM (जैसे, GPT-4o-mini के साथ ChatOpenAI) को इनिशियलाइज़ करें, और नियंत्रक के साथ BrowserUse एजेंट बनाएँ। |ActionResult ऑब्जेक्ट देता है। |यह उदाहरण reCAPTCHA v2 पर केंद्रित है, लेकिन आप कार्य प्रकार को संशोधित करके इसे अन्य CAPTCHA प्रकारों के लिए अनुकूलित कर सकते हैं (जैसे, Turnstile के लिए AntiTurnstileTaskProxyLess)।
यह अनुभाग बताता है कि reCAPTCHA v2 चेकबॉक्स के साथ एक डेमो पृष्ठ पर नेविगेट करने और फ़ॉर्म सबमिट करने के लिए एक नमूना कार्य का उपयोग करके एकीकरण कैसे काम करता है।
https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php पर जाने, फ़ॉर्म सबमिट करने और solve_captcha क्रिया का उपयोग करके किसी भी CAPTCHA को हल करने का निर्देश देता है।.g-recaptcha तत्व की तलाश करके CAPTCHA की जाँच करता है। यदि मिल जाता है, तो यह solve_captcha क्रिया को ट्रिगर करता है।solve_captcha क्रिया साइट कुंजी और पृष्ठ URL निकालती है, CapSolver के API के साथ एक कार्य बनाती है, और समाधान के लिए पोल करती है।g-recaptcha-response फ़ील्ड में इंजेक्ट करती है।दृष्टिगत रूप से, आप ब्राउज़र को डेमो पृष्ठ पर नेविगेट करते हुए देखेंगे, समाधान इंजेक्ट किए जाने के बाद reCAPTCHA चेकबॉक्स स्वचालित रूप से चिह्नित हो रहा है, और फ़ॉर्म सफलतापूर्वक सबमिट किया जा रहा है।
| प्रश्न | उत्तर |
|---|---|
| CapSolver किस प्रकार के CAPTCHA को हल कर सकता है? | CapSolver reCAPTCHA v2/v3, Cloudflare Turnstile, और बहुत कुछ का समर्थन करता है। पूरी सूची के लिए CapSolver दस्तावेज़ीकरण देखें। |
| मैं विभिन्न CAPTCHA प्रकारों को कैसे संभालूँ? | CAPTCHA प्रकार का पता लगाने के लिए कस्टम क्रिया को संशोधित करें (जैसे, विशिष्ट तत्वों या विशेषताओं की जाँच करें) और उपयुक्त CapSolver कार्य प्रकार का उपयोग करें, जैसे Turnstile के लिए AntiTurnstileTaskProxyLess। |
| यदि CapSolver CAPTCHA को हल करने में विफल रहता है तो क्या होगा? | कस्टम क्रिया में पुनः प्रयास तर्क लागू करें या उपयोगकर्ता को विफलता की सूचना दें। डिबगिंग के लिए त्रुटियों को लॉग करें और फ़ॉलबैक रणनीतियों पर विचार करें। |
| क्या मैं अन्य स्वचालन टूल के साथ CapSolver का उपयोग कर सकता हूँ? | हाँ, CapSolver का API किसी भी टूल के साथ संगत है जो HTTP अनुरोधों का समर्थन करता है, जिसमें Selenium, Puppeteer और Playwright शामिल हैं। |
| क्या मुझे CapSolver के साथ प्रॉक्सी की आवश्यकता है? | क्षेत्र-विशिष्ट या IP-बाउंड CAPTCHA के लिए प्रॉक्सी की आवश्यकता हो सकती है। CapSolver प्रॉक्सी उपयोग का समर्थन करता है; विवरण के लिए उनका दस्तावेज़ीकरण देखें। |
Browser-use के साथ CapSolver को एकीकृत करने से वेब स्वचालन कार्यों में CAPTCHA को संभालने के लिए एक मजबूत समाधान मिलता है। CAPTCHA को हल करने के लिए एक कस्टम क्रिया को परिभाषित करके, आप यह सुनिश्चित कर सकते हैं कि आपके AI एजेंट वेबसाइटों पर सहजता से नेविगेट करते हैं, भले ही एंटी-बॉट उपायों का सामना करना पड़े। यह संयोजन Browser-use के उपयोग में आसानी और CapSolver की शक्तिशाली CAPTCHA-हल करने की क्षमताओं का लाभ उठाता है ताकि कुशल स्वचालन वर्कफ़्लो बनाया जा सके।
आरंभ करने के लिए, CapSolver के लिए साइन अप करें और Browser-use का अन्वेषण करें। सेटअप निर्देशों का पालन करें और दिए गए कोड उदाहरण को लागू करें। अधिक विवरण के लिए, CapSolver दस्तावेज़ीकरण और Browser-use दस्तावेज़ीकरण पर जाएँ। अपनी अगली स्वचालन परियोजना में इस एकीकरण का प्रयास करें और CAPTCHA को स्वचालित रूप से हल करने की आसानी का अनुभव करें!
Browser-use उपयोगकर्ताओं के लिए बोनस: अपने CapSolver खाते को रिचार्ज करते समय प्रोमो कोड BROWSERUSE का उपयोग करें और एक विशेष 6% बोनस क्रेडिट प्राप्त करें-कोई सीमा नहीं, कोई समाप्ति नहीं।
जानें कि क्लाउडफ़्लेयर एरर 1020 एक्सेस अस्वीकृत के क्या कारण होते हैं, कैसे वेब एप्लिकेशन फ़ायरवॉल और बॉट डिटेक्शन काम करते हैं, और विकासकर्ता कैसे वैध स्वचालन प्रक्रियाओं में गलत सकारात्मकों को कम कर सकते हैं।

सीखें कैसे कैपसॉल्वर n8n टेम्पलेट का उपयोग AWS WAF-सुरक्षित उत्पाद पृष्ठों को मॉनिटर करने, चुनौतियां हल करने, मूल्य निकालने, परिवर्तनों की तुलना करने और स्वचालित रूप से चेतावनियां ट्रिगर करने के लिए करें।
