CAPSOLVER
ब्लॉग
Selenium के साथ CapSolver को कैसे एकीकृत करें | संपूर्ण मार्गदर्शिका 2025

Selenium के साथ CapSolver को कैसे एकीकृत करें | संपूर्ण मार्गदर्शिका 2025

Logo of CapSolver

Rajinder Singh

Deep Learning Researcher

04-Sep-2025

सेलेनियम क्या है?

सेलेनियम एक ओपन-सोर्स ऑटोमेशन टेस्टिंग टूल है जिसका मुख्य रूप से वेब एप्लिकेशन को ऑटोमेट करने के लिए उपयोग किया जाता है। इसका उपयोग आमतौर पर वेब स्क्रैपिंग और वेबसाइट इंटरैक्शन को ऑटोमेट करने के लिए भी किया जाता है। सेलेनियम ब्राउज़र में विभिन्न उपयोगकर्ता व्यवहारों का अनुकरण कर सकता है, जैसे क्लिक करना, टाइप करना, स्क्रॉल करना और पेज बदलना। इसे मूल रूप से 2004 में जेसन हगिंस द्वारा विकसित किया गया था और अब इसका रखरखाव सेलेनियम प्रोजेक्ट टीम द्वारा किया जाता है। सेलेनियम कई प्रोग्रामिंग भाषाओं का समर्थन करता है, जिनमें पायथन, जावा, C#, रूबी और जावास्क्रिप्ट शामिल हैं।

सेलेनियम में निम्नलिखित मुख्य घटक होते हैं:

  1. सेलेनियम वेबड्राइवर (सबसे अधिक उपयोग किया जाता है)

    • ब्राउज़र पर मूल नियंत्रण प्रदान करता है, क्रोम, फ़ायरफ़ॉक्स, एज और सफ़ारी जैसे प्रमुख ब्राउज़रों का समर्थन करता है।
    • क्लिक करना, टाइप करना, स्क्रॉल करना और टैब बदलना जैसे विभिन्न ब्राउज़र क्रियाओं का अनुकरण कर सकता है।
    • प्रत्येक ब्राउज़र के लिए एक संबंधित ड्राइवर होता है, जैसे chromedriver या geckodriver
  2. सेलेनियम IDE

    • एक ब्राउज़र एक्सटेंशन (क्रोम/फ़ायरफ़ॉक्स के लिए) जो टेस्ट स्क्रिप्ट की रिकॉर्डिंग और प्लेबैक की अनुमति देता है। यह परीक्षण में शुरुआती लोगों के लिए आदर्श है।
  3. सेलेनियम ग्रिड

    • कई ब्राउज़रों और मशीनों के साथ एक टेस्ट ग्रिड बनाकर वितरित परीक्षण को सक्षम करता है, जिससे स्क्रिप्ट का समानांतर निष्पादन संभव होता है।

सामान्य उपयोग के मामले

  • डायनामिक कंटेंट को स्क्रैप करना: जावास्क्रिप्ट रेंडरिंग द्वारा उत्पन्न डेटा निकालें।
  • जटिल इंटरैक्शन को संभालना: उन साइटों को स्क्रैप करने के लिए उपयुक्त है जिनके लिए डेटा तक पहुँचने के लिए लॉगिन या बहु-चरणीय क्रियाओं की आवश्यकता होती है।
  • SPA एप्लिकेशन से डेटा निकालना: Vue या React जैसे ढाँचों के साथ निर्मित पृष्ठों को क्रॉल करें।
  • स्वचालित परीक्षण: डेटा एकत्र करते समय पेज कार्यक्षमता को मान्य करें।
  • हेडलेस मोड के साथ काम करना: बिना ग्राफिकल इंटरफ़ेस के सभी ऑपरेशन करें, सर्वर पर चलाने के लिए आदर्श।

सेलेनियम का मूल उपयोग

पायथन में सेलेनियम का उपयोग करने के लिए:

bash Copy
pip install selenium

क्रोम के साथ सेलेनियम का उपयोग करने के लिए, Github से अपने क्रोम संस्करण से मेल खाने वाला chromedriver डाउनलोड करें

उदाहरण: CapSolver के ब्लॉग से सभी ब्लॉग पोस्ट शीर्षक प्राप्त करने के लिए सेलेनियम का उपयोग करना:

python Copy
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chrome_options = Options()
chrome_options.add_argument("--start-maximized")

# chromedriver पथ निर्दिष्ट करें (यदि पहले से ही PATH में जोड़ा गया है, तो इसे छोड़ा जा सकता है)
service = Service(executable_path="chromedriver.exe")
driver = webdriver.Chrome(options=chrome_options, service=service)

try:
    driver.get("https://www.capsolver.com/blog/All")
    WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.TAG_NAME, 'h5')))

    h5_elements = driver.find_elements(By.TAG_NAME, "h5")
    for el in h5_elements:
        print(el.text.strip())

finally:
    driver.quit()

सेलेनियम के साथ CapSolver एक्सटेंशन को कैसे एकीकृत करें

सेलेनियम एक शक्तिशाली टूल है जो नियमित ब्राउज़र की तरह ब्राउज़र एक्सटेंशन लोड करने का समर्थन करता है।

  1. आधिकारिक CapSolver GitHub से नवीनतम एक्सटेंशन .zip पैकेज डाउनलोड करें और इसे अनज़िप करें:
    👉 https://github.com/capsolver/capsolver-browser-extension/releases

  2. सेलेनियम के स्टार्टअप विकल्पों में, एक्सटेंशन पथ निर्दिष्ट करने के लिए load-extension तर्क का उपयोग करें:

python Copy
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chrome_options = Options()
chrome_options.add_argument("--start-maximized")
chrome_options.add_argument("load-extension=/path/to/capSolver extension")

# chromedriver पथ निर्दिष्ट करें (यदि पहले से ही PATH में है तो छोड़ दें)
service = Service(executable_path="chromedriver.exe")
driver = webdriver.Chrome(options=chrome_options, service=service)

try:
    driver.get("https://www.capsolver.com/blog/All")
    WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.TAG_NAME, 'h5')))

    h5_elements = driver.find_elements(By.TAG_NAME, "h5")
    for el in h5_elements:
        print(el.text.strip())

finally:
    driver.quit()

⚠️ नोट: यदि आप क्रोम v137 का उपयोग कर रहे हैं, तो आपको एक अतिरिक्त तर्क जोड़ने की आवश्यकता हो सकती है:

python Copy
chrome_options.add_argument("--disable-features=DisableLoadExtensionCommandLineSwitch")

अधिक विवरण: SeleniumHQ। विभिन्न संस्करण अलग तरह से व्यवहार कर सकते हैं—अपने परिवेश के अनुसार समायोजित करें।

reCAPTCHA v2 को हल करने के लिए CapSolver एक्सटेंशन का उपयोग करना

reCAPTCHA, Cloudflare Turnstile, AWS WAF और GeeTest जैसे CAPTCHA का उपयोग हजारों वेबसाइटों पर व्यापक रूप से किया जाता है। हालाँकि, उनकी DOM संरचनाएँ साइटों पर अधिकांशतः सुसंगत रहती हैं। CapSolver एक्सटेंशन स्वचालित रूप से उनकी विशिष्ट विशेषताओं के आधार पर इन CAPTCHA का पता लगा सकता है और उन्हें हल कर सकता है—किसी मैन्युअल इंटरैक्शन की आवश्यकता नहीं है।

आइए reCAPTCHA v2 को एक उदाहरण के रूप में लें और प्रदर्शित करें कि इसे बायपास करने के लिए सेलेनियम के भीतर CapSolver एक्सटेंशन का उपयोग कैसे करें।
(नोट: जब तक अन्यथा नहीं कहा जाता है, तब तक निम्न डेमो click मोड का उपयोग करता है: /assets/config.js → reCaptchaMode: 'click' में सेट करें)

🛠️ एक्सटेंशन को अनज़िप करना न भूलें और /assets/config.js में अपना apiKey कॉन्फ़िगर करें

python Copy
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chrome_options = Options()
chrome_options.add_argument("--start-maximized")

# चरण 1: GitHub से एक्सटेंशन प्राप्त करें: https://github.com/capsolver/capsolver-browser-extension/releases
# चरण 2: एक्सटेंशन को अनज़िप करें और /assets/config.js में अपना apiKey सेट करें
chrome_options.add_argument("load-extension=/path/to/CapSolver Browser Extension-v1.16.0")

# chromedriver पथ निर्दिष्ट करें (यदि पहले से ही PATH में है तो छोड़ दें)
service = Service(executable_path="chromedriver.exe")
driver = webdriver.Chrome(options=chrome_options, service=service)

try:
    driver.get("https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php")
    WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'form[action="/recaptcha-v2-checkbox.php"]')))

    # एक्सटेंशन स्वचालित रूप से reCAPTCHA का पता लगाएगा और उसे हल करेगा
    time.sleep(15)

    # हल करने के बाद, सबमिट बटन पर क्लिक करें
    submit_button = driver.find_element(By.CSS_SELECTOR, 'button[type="submit"]')
    submit_button.click()
    time.sleep(3)

except Exception as error:
    print(error)

finally:
    driver.quit()

CapSolver एक्सटेंशन कई उपयोगी कॉन्फ़िगरेशन विकल्पों का भी समर्थन करता है। सभी सेटिंग्स को /assets/config.js फ़ाइल में समायोजित किया जा सकता है।

solvedCallback कॉन्फ़िगरेशन विकल्प

पिछले उदाहरण में, पेज लोड होने के बाद सबमिट बटन पर क्लिक करने से पहले हमने 15 सेकंड का इंतजार किया। यह प्रतीक्षा अवधि CapSolver एक्सटेंशन को reCAPTCHA को स्वचालित रूप से हल करने के लिए पर्याप्त समय देने के लिए थी।
हालांकि, यह तरीका सुंदर नहीं है। व्यवहार में, CAPTCHA को हल करने में 15 सेकंड से बहुत कम समय लग सकता है, या धीमे नेटवर्क के मामलों में, 15 सेकंड से अधिक समय लग सकता है।

इसे हल करने के लिए, CapSolver एक कॉन्फ़िगरेशन विकल्प प्रदान करता है जिसे solvedCallback कहा जाता है। यह आपको एक कॉलबैक फ़ंक्शन परिभाषित करने की अनुमति देता है जो CAPTCHA के सफलतापूर्वक हल होने के बाद ट्रिगर होता है। आप /assets/config.js में solvedCallback विकल्प पा सकते हैं, और आप फ़ंक्शन नाम को अनुकूलित कर सकते हैं—डिफ़ॉल्ट रूप से, यह captchaSolvedCallback है।

यदि आप Puppeteer या Playwright का उपयोग कर रहे हैं, तो आप page.exposeFunction विधि का उपयोग करके इस कॉलबैक फ़ंक्शन को ब्राउज़र संदर्भ में उजागर कर सकते हैं। देखें:

पायथन + सेलेनियम के बारे में क्या?

दुर्भाग्य से, पायथन का सेलेनियम page.exposeFunction के बराबर बिल्ट-इन प्रदान नहीं करता है, इसलिए इस परिवेश में solvedCallback सुविधा का पूरी तरह से उपयोग नहीं किया जा सकता है

इसके बजाय, हम यह निर्धारित करने के लिए DOM अवलोकन का उपयोग करने की सलाह देते हैं कि क्या CAPTCHA हल हो गया है। उदाहरण के लिए, आप जांच सकते हैं कि क्या **"मैं रोबोट नहीं हूँ" चेकबॉक्स गायब हो गया है या चेकमार्क (✔) में बदल गया है, यह दर्शाता है कि सत्यापन पूरा हो गया है।

आइए इस रणनीति का उपयोग करके पिछले उदाहरण में सुधार करें:

python Copy
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chrome_options = Options()
chrome_options.add_argument("--start-maximized")

# चरण 1: GitHub से एक्सटेंशन प्राप्त करें: https://github.com/capsolver/capsolver-browser-extension/releases
# चरण 2: एक्सटेंशन को अनज़िप करें और /assets/config.js में अपना apiKey सेट करें
chrome_options.add_argument("load-extension=/path/to/CapSolver Browser Extension-v1.16.0")

# chromedriver पथ निर्दिष्ट करें (यदि पहले से ही PATH में है तो छोड़ दें)
service = Service(executable_path="chromedriver.exe")
driver = webdriver.Chrome(options=chrome_options, service=service)

def check_recaptcha_status(driver):
    try:
        iframe = driver.find_element(By.CSS_SELECTOR, 'iframe[src*="recaptcha"]')
        driver.switch_to.frame(iframe)

        # जांचें कि क्या क्लास नाम इंगित करता है कि चेकबॉक्स चेक किया गया है
        recaptcha_anchor = driver.find_element(By.ID, "recaptcha-anchor")
        class_list = recaptcha_anchor.get_attribute("class")
        driver.switch_to.default_content()
        if "recaptcha-checkbox-checked" in class_list.split():
            return True
        else:
            return False
    except Exception as e:
        print(f"Failed to check reCAPTCHA status: {e}")
        driver.switch_to.default_content()
        return False

try:
    driver.get("https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php")
    WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'form[action="/recaptcha-v2-checkbox.php"]')))

    # एक्सटेंशन स्वचालित रूप से CAPTCHA को पहचान लेगा और उसे हल कर देगा।
    # निश्चित समय सोने के बजाय, समय-समय पर जांच करें।
    timeout = 30
    start_time = time.time()
    while time.time() - start_time < timeout:
        if check_recaptcha_status(driver):
            print("reCAPTCHA verification successful!")
            submit_button = driver.find_element(By.CSS_SELECTOR, 'button[type="submit"]')
            submit_button.click()
            time.sleep(3)
            driver.quit()
            break
        time.sleep(1)

except Exception as error:
    print(error)

finally:
    driver.quit()

manualSolving कॉन्फ़िगरेशन विकल्प

पिछले उदाहरणों में, CAPTCHA समाधान प्रक्रिया पेज के लोड होने के साथ ही स्वचालित रूप से शुरू हो जाती है। हालाँकि, कुछ मामलों में, CAPTCHA सॉल्वर को ट्रिगर करने से पहले आपको पहले अन्य क्रियाएँ करने की आवश्यकता हो सकती है—जैसे उपयोगकर्ता नाम और पासवर्ड भरना। CAPTCHA को बहुत जल्दी हल करने से सबमिशन से पहले टोकन की समय सीमा समाप्त हो सकती है।

manualSolving विकल्प को इस समस्या को हल करने के लिए डिज़ाइन किया गया है। /assets/config.js में manualSolving: true सेट करके, आप निम्नलिखित दो विधियों में से किसी एक का उपयोग करके CAPTCHA समाधान को मैन्युअल रूप से ट्रिगर कर सकते हैं:

  1. सेलेनियम के माध्यम से CapSolver एक्सटेंशन बटन पर क्लिक का अनुकरण करें
  2. एक संदेश पोस्ट करने के लिए एक स्क्रिप्ट निष्पादित करें: window.postMessage({ type: 'capsolverSolve' });
    (नोट: यह विधि एक्सटेंशन संस्करण v1.16.0 और उससे ऊपर में समर्थित है।)

निम्नलिखित उदाहरण दर्शाता है कि दोनों विधियों का उपयोग कैसे करें:

python Copy
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chrome_options = Options()
chrome_options.add_argument("--start-maximized")

# चरण 1: GitHub से एक्सटेंशन प्राप्त करें (https://github.com/capsolver/capsolver-browser-extension/releases)
# चरण 2: एक्सटेंशन को अनज़िप करें और /assets/config.js में अपना apiKey कॉन्फ़िगर करें
chrome_options.add_argument("load-extension=/path/to/CapSolver Browser Extension-v1.16.0")

# chromedriver पथ निर्दिष्ट करें (यदि पहले से ही PATH में है तो छोड़ दें)
service = Service(executable_path="chromedriver.exe")
driver = webdriver.Chrome(options=chrome_options, service=service)

def check_recaptcha_status(driver):
    try:
        iframe = driver.find_element(By.CSS_SELECTOR, 'iframe[src*="recaptcha"]')
        driver.switch_to.frame(iframe)

        # निर्धारित करें कि क्या चेकबॉक्स चेक किया गया है
        recaptcha_anchor = driver.find_element(By.ID, "recaptcha-anchor")
        class_list = recaptcha_anchor.get_attribute("class")
        driver.switch_to.default_content()
        if "recaptcha-checkbox-checked" in class_list.split():
            return True
        else:
            return False
    except Exception as e:
        print(f"Failed to check reCAPTCHA status: {e}")
        driver.switch_to.default_content()
        return False

try:
    driver.get("https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php")
    WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'form[action="/recaptcha-v2-checkbox.php"]')))

    # उपयोगकर्ता इनपुट का अनुकरण करें
    driver.execute_script("""
        const inputA = document.querySelector('input[name="ex-a"]');
        inputA.value = 'username';
        const inputB = document.querySelector('input[name="ex-b"]');
        inputB.value = 'password';
    """)

    # अतिरिक्त कार्यों का अनुकरण करें
    for i in range(1, 6):
        time.sleep(1)
        print(f"Waited {i} seconds...")

    # CAPTCHA समाधान को ट्रिगर करें (manualSolving को config.js में true पर सेट किया जाना चाहिए)
    print("Start solving captcha...")

    # विधि 1: CapSolver बटन पर क्लिक करने का अनुकरण करें
    try:
        capsolver_button = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, "#capsolver-solver-tip-button")))
        driver.execute_script("arguments[0].click();", capsolver_button)
    except Exception as e:
        print(f"Unable to find CapSolver button: {e}")

    # विधि 2: postMessage के माध्यम से ट्रिगर करें (वैकल्पिक विधि)
    # driver.execute_script("window.postMessage({ type: 'capsolverSolve' });")

    # CAPTCHA के हल होने और फ़ॉर्म सबमिट करने की प्रतीक्षा करें
    timeout = 30
Copy
```python
start_time = time.time()
जब तक time.time() - start_time < timeout:
    if check_recaptcha_status(driver):
        print("reCAPTCHA सत्यापन सफल!")
        submit_button = driver.find_element(By.CSS_SELECTOR, 'button[type="submit"]')
        submit_button.click()
        time.sleep(3)
        driver.quit()
        break
    time.sleep(1)

except Exception as error:
    print(error)

finally:
    driver.quit()

CapSolver Python और Golang दोनों के लिए आधिकारिक SDK प्रदान करता है, जो आपको न्यूनतम प्रयास के साथ CAPTCHA समाधान को एकीकृत करने की अनुमति देता है। कच्चे API (जहाँ आपको मैन्युअल रूप से createTask और getTaskResult को संभालना होगा) का उपयोग करने के विपरीत, SDK पूरी प्रक्रिया को सरल बनाते हैं।

आधिकारिक GitHub रिपॉजिटरी:

CapSolver SDK के साथ reCAPTCHA v2 को हल करना

API की तरह ही, reCAPTCHA v2 को हल करने से पहले, आपको कौन से JSON पैरामीटर भेजने हैं, इस पर विस्तृत जानकारी के लिए दस्तावेज़ का संदर्भ लेना चाहिए:
🔗 https://docs.capsolver.com/en/guide/captcha/ReCaptchaV2/
इसके अतिरिक्त, आप आवश्यक JSON डेटा को जल्दी से निकालने के लिए CapSolver ब्राउज़र एक्सटेंशन का उपयोग कर सकते हैं:
🔗 https://www.capsolver.com/blog/reCAPTCHA/recaptcha-v3-solver-human-score

आइए इस पृष्ठ को एक उदाहरण के रूप में उपयोग करें:
👉 https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php

आवश्यक JSON पेलोड इस तरह दिखता है:

json Copy
{
  "type": "ReCaptchaV2TaskProxyLess",
  "websiteKey": "6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9",
  "websiteURL": "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php"
}

CapSolver SDK स्थापित करें:

bash Copy
pip install capsolver

उदाहरण: Selenium में SDK का उपयोग करना

python Copy
import time
import capsolver
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chrome_options = Options()
chrome_options.add_argument("--start-maximized")
service = Service(executable_path="chromedriver.exe")
driver = webdriver.Chrome(options=chrome_options, service=service)

# अपनी CapSolver कॉन्फ़िगरेशन सेट करें
api_key = "YOUR_API_KEY"
site_key = "6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9"
site_url = "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php"
captcha_type = 'ReCaptchaV2TaskProxyLess'
capsolver.api_key = api_key

try:
    # SDK का उपयोग करके हल करें
    solution = capsolver.solve({
        "type": captcha_type,
        "websiteURL": site_url,
        "websiteKey": site_key,
    })
    token = solution["gRecaptchaResponse"]
    print("token:", token)

    driver.get(site_url)
    WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.CSS_SELECTOR, 'form[action="/recaptcha-v2-checkbox.php"]'))
    )

    driver.execute_script("""
        const textarea = document.getElementById('g-recaptcha-response');
        if (textarea) {
            textarea.value = arguments[0];
        }
    """, token)

    submit_button = WebDriverWait(driver, 10).until(
        EC.element_to_be_clickable((By.CSS_SELECTOR, 'button[type="submit"]'))
    )
    submit_button.click()
    time.sleep(5)

except Exception as error:
    print(error)

finally:
    driver.quit()

CapSolver SDK के साथ ImageToText को हल करना

API की तरह ही, हम साइट के साथ जारी रखेंगे:
👉 https://captcha.com/demos/features/captcha-demo.aspx
CAPTCHA इमेज में ID demoCaptcha_CaptchaImage है, और परिणाम इनपुट फ़ील्ड में ID captchaCode है।

एक ImageToTextTask में, आपको बस CapSolver को बेस64-एन्कोडेड इमेज पास करने की आवश्यकता है।

उदाहरण कोड:

python Copy
import time
import capsolver
import requests
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chrome_options = Options()
chrome_options.add_argument("--start-maximized")
service = Service(executable_path="chromedriver.exe")
driver = webdriver.Chrome(options=chrome_options, service=service)

# अपनी CapSolver कॉन्फ़िगरेशन सेट करें
api_key = "YOUR_API_KEY"
site_url = "https://captcha.com/demos/features/captcha-demo.aspx"
captcha_type = 'ImageToTextTask'
capsolver.api_key = api_key

try:
    driver.get(site_url)
    WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.CSS_SELECTOR, '#demoCaptcha_CaptchaImage'))
    )

    # इमेज से base64 स्ट्रिंग प्राप्त करें
    captcha_src = driver.execute_script("""
        const img = document.querySelector('img[id="demoCaptcha_CaptchaImage"]');
        return img ? img.getAttribute('src') : null;
    """)
    if not captcha_src:
        raise Exception("CAPTCHA इमेज प्राप्त करने में असमर्थ!")

    base64_image = captcha_src.split(',')[1]
    solution = capsolver.solve({
        "type": captcha_type,
        "websiteURL": site_url,
        "body": base64_image,
    })
    captcha_text = solution["text"]
    print("Text:", captcha_text)

    driver.execute_script("""
        document.getElementById('captchaCode').value = arguments[0];
    """, captcha_text)

    validate_button = WebDriverWait(driver, 10).until(
        EC.element_to_be_clickable((By.CSS_SELECTOR, '#validateCaptchaButton'))
    )
    validate_button.click()
    time.sleep(5)

except Exception as error:
    print(error)

finally:
    driver.quit()

उपयोगी संदर्भ

CapSolver एक्सटेंशन की विशेषता वाले डेमो वीडियो:

इसके अतिरिक्त, CapSolver एक डेवलपर राजस्व साझाकरण कार्यक्रम प्रदान करता है, जिससे डेवलपर्स और पार्टनर CapSolver समाधानों को एकीकृत करने या उनका प्रचार करके कमीशन अर्जित कर सकते हैं। दूसरों को कुशलतापूर्वक कैप्चा को हल करने में मदद करते हुए अपने काम का मुद्रीकरण करने का यह एक शानदार तरीका है। पूर्ण विवरण के लिए, देखें:
CapSolver डेवलपर योजना

निष्कर्ष

इस गाइड ने आपको CAPTCHA को संभालने के लिए Selenium को CapSolver के साथ प्रभावी ढंग से एकीकृत करना सिखाया है। हमने वेब ऑटोमेशन के लिए Selenium की मुख्य विशेषताओं को शामिल किया और दो मुख्य CapSolver एकीकरण विधियों को उजागर किया:

  1. CapSolver ब्राउज़र एक्सटेंशन: स्वचालित CAPTCHA समाधान के लिए एक सीधा समाधान, त्वरित सेटअप के लिए बढ़िया है।
  2. CapSolver API/SDK: अधिक नियंत्रण और परिशुद्धता प्रदान करता है, उन्नत उपयोग के मामलों के लिए आदर्श है। आप विस्तृत API दस्तावेज़ यहाँ और Python SDK यहाँ पा सकते हैं।

अनुपालन अस्वीकरण: इस ब्लॉग पर प्रदान की गई जानकारी केवल सूचनात्मक उद्देश्यों के लिए है। CapSolver सभी लागू कानूनों और विनियमों का पालन करने के लिए प्रतिबद्ध है। CapSolver नेटवर्क का उपयोग अवैध, धोखाधड़ी या दुरुपयोग करने वाली गतिविधियों के लिए करना सख्त वर्जित है और इसकी जांच की जाएगी। हमारे कैप्चा समाधान उपयोगकर्ता अनुभव को बेहतर बनाने के साथ-साथ सार्वजनिक डेटा क्रॉलिंग के दौरान कैप्चा कठिनाइयों को हल करने में 100% अनुपालन सुनिश्चित करते हैं। हम अपनी सेवाओं के जिम्मेदार उपयोग की प्रोत्साहना करते हैं। अधिक जानकारी के लिए, कृपया हमारी सेवा की शर्तें और गोपनीयता नीति पर जाएं।

अधिक

क्लाउडफ़्लेर त्रुटि 1006, 1007, 1008
क्लाउडफ़्लेयर त्रुटि 1006, 1007, 1008 हल करने का समाधान | कैसे ठीक करें

क्लाउडफ़ेयर त्रुटि 1006, 1007 या 1008 के साथ परेशान हैं? इन एक्सेस अस्वीकृतियों को हल करने और अपने वेब क्रॉलिंग अनुभव को बढ़ाने के लिए व्यावहारिक समाधान सीखें।

Cloudflare
Logo of CapSolver

Nikolai Smirnov

05-Dec-2025

AI-LLM: भविष्य का समाधान रिस्क नियंत्रण के लिए छवि पहचान एवं CAPTCHA हल करना
एआई-एलएलएम: जोखिम नियंत्रण छवि संज्ञान और कैप्चा हल करने के लिए भविष्य का समाधान

एक गहरा अध्ययन कैसे बड़े भाषा मॉडल ग्राफिकल कैप्चा हल करते हैं, शून्य-शॉट तर्क और CNN की यथार्थता के संयोजन के माध्यम से आधुनिक जोखिम नियंत्रण के लिए।

Logo of CapSolver

Rajinder Singh

05-Dec-2025

कैप्चा कैसे हल करें जब वेब स्क्रैपिंग करते हैं Scrapling और CapSolver के साथ
कैप्चा कैसे हल करें जब वेब स्क्रैपिंग करते हैं Scrapling और CapSolver के साथ

स्क्रैपलिंग + कैपसॉल्वर रीकैपचा v2/v3 और क्लाउडफ़्लेयर टर्नस्टाइल बायपास के साथ स्वचालित स्क्रैपिंग सक्षम करता है।

web scraping
Logo of CapSolver

Rajinder Singh

05-Dec-2025

सेलेनियम में यूजर-एजेंट बदलें
यूजर-एजेंट बदलें | सेलेनियम में चरण एवं शीर्ष विधियां

Selenium में User Agent बदलना बहुत सारे वेब स्क्रैपिंग कार्यों के लिए एक महत्वपूर्ण कदम है। यह ऑटोमेशन स्क्रिप्ट को एक सामान्य ब्राउज़र के रूप में छिपाने में मदद करता है...

The other captcha
Logo of CapSolver

Lucas Mitchell

05-Dec-2025

कैपसॉल्वर एक्सटेंशन के साथ क्लाउडफ़्लेयर टर्नस्टाइल को हल करने के लिए `क्रियाकलाप` के लिए आवश्यक है कैसे निर्धारित करें
कैसे पहचानें कि `कार्य` क्लाउडफ़ेयर टर्नस्टाइल को हल करने के लिए आवश्यक है कैपसॉल्वर एक्सटेंशन के साथ

क्लाउडफ़्लेयर टर्नस्टाइल प्रभावी कैप्चा हल करने के लिए कार्रवाई की पहचान सीखें। Capsolver के उपकरणों और तकनीकों का उपयोग करने के लिए हमारे चरण-दर-चरण गाइड का अनुसरण करें।

Cloudflare
Logo of CapSolver

Rajinder Singh

05-Dec-2025

9प्रॉक्सी
9Proxy की शक्ति की खोज करें: व्यापक समीक्षा

इस लेख में, हम आपको 9proxy क्या है और जो वे प्रदान करते हैं सेवाएं दिखाएंगे।

web scraping
Logo of CapSolver

Rajinder Singh

04-Dec-2025