Use Cases

أتمتة تسجيل الدخول مع التعامل مع CAPTCHA باستخدام CaptchaAI

تعد صفحات تسجيل الدخول هي المكان الأكثر شيوعًا لمواجهة اختبارات CAPTCHA. سواء كان reCAPTCHA v2، أو v3، أو Turnstile، أو صورة CAPTCHA، فإن CaptchaAI يحل التحدي بينما تتعامل الأتمتة مع تعبئة النموذج وإرساله.

أنواع CAPTCHA الشائعة لتسجيل الدخول

اختبار CAPTCHA كيف يظهر طريقة CaptchaAI
reCAPTCHA v2 خانة الاختيار أو التحدي قبل الإرسال method=userrecaptcha
reCAPTCHA v3 تسجيل غير مرئي، يمنع المستخدمين ذوي الدرجات المنخفضة method=userrecaptcha&version=v3
Cloudflare Turnstile القطعة قبل نموذج تسجيل الدخول method=turnstile
صورة التحقق صورة نصية للكتابة method=base64

الطريقة الأولى: طلبات HTTP (بدون متصفح)

بالنسبة لنماذج تسجيل الدخول التي تقبل طلبات POST القياسية:

import requests
import time

API_KEY = "YOUR_API_KEY"

def solve_recaptcha(site_key, page_url):
    resp = requests.get("https://ocr.captchaai.com/in.php", params={
        "key": API_KEY, "method": "userrecaptcha",
        "googlekey": site_key, "pageurl": page_url
    })
    task_id = resp.text.split("|")[1]
    for _ in range(60):
        time.sleep(5)
        result = requests.get("https://ocr.captchaai.com/res.php", params={
            "key": API_KEY, "action": "get", "id": task_id
        })
        if result.text == "CAPCHA_NOT_READY": continue
        if result.text.startswith("OK|"): return result.text.split("|")[1]
        raise Exception(result.text)
    raise TimeoutError()

# Login flow
session = requests.Session()
login_url = "https://example.com/login"

# Load login page to get cookies and site key
page = session.get(login_url)
# Extract site_key from the page HTML...
site_key = "6Le-wvkS..."

# Solve CAPTCHA
token = solve_recaptcha(site_key, login_url)

# Submit login form
resp = session.post(login_url, data={
    "username": "user@example.com",
    "password": "your_password",
    "g-recaptcha-response": token
})

if resp.url != login_url:
    print("Login successful!")
    # session now has auth cookies for subsequent requests

الطريقة الثانية: السيلينيوم (بايثون)

بالنسبة لصفحات تسجيل الدخول التي تتطلب تنفيذ JavaScript:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import requests
import time

API_KEY = "YOUR_API_KEY"

options = webdriver.ChromeOptions()
options.add_argument("--disable-blink-features=AutomationControlled")
driver = webdriver.Chrome(options=options)

# Navigate to login page
driver.get("https://example.com/login")
wait = WebDriverWait(driver, 10)

# Fill in credentials
username_field = wait.until(EC.presence_of_element_located((By.NAME, "username")))
username_field.send_keys("user@example.com")
driver.find_element(By.NAME, "password").send_keys("your_password")

# Extract site key and solve
recaptcha = driver.find_element(By.CLASS_NAME, "g-recaptcha")
site_key = recaptcha.get_attribute("data-sitekey")

token = solve_recaptcha(site_key, driver.current_url)

# Inject token
driver.execute_script(
    f"document.getElementById('g-recaptcha-response').innerHTML = '{token}';"
)

# Submit
driver.find_element(By.CSS_SELECTOR, 'button[type="submit"]').click()
wait.until(EC.url_changes(driver.current_url))
print(f"Logged in! Now at: {driver.current_url}")

الطريقة الثالثة: Puppeteer (Node.js)

const puppeteer = require("puppeteer");
const axios = require("axios");

const API_KEY = "YOUR_API_KEY";

async function solveRecaptcha(siteKey, pageUrl) {
  const submit = await axios.get("https://ocr.captchaai.com/in.php", {
    params: {
      key: API_KEY,
      method: "userrecaptcha",
      googlekey: siteKey,
      pageurl: pageUrl,
    },
  });
  const taskId = submit.data.split("|")[1];

  while (true) {
    await new Promise((r) => setTimeout(r, 5000));
    const result = await axios.get("https://ocr.captchaai.com/res.php", {
      params: { key: API_KEY, action: "get", id: taskId },
    });
    if (result.data === "CAPCHA_NOT_READY") continue;
    if (result.data.startsWith("OK|")) return result.data.split("|")[1];
    throw new Error(result.data);
  }
}

(async () => {
  const browser = await puppeteer.launch({ headless: "new" });
  const page = await browser.newPage();
  await page.goto("https://example.com/login");

  // Fill credentials
  await page.type("#username", "user@example.com");
  await page.type("#password", "your_password");

  // Get site key and solve
  const siteKey = await page.$eval(".g-recaptcha", (el) =>
    el.getAttribute("data-sitekey")
  );
  const token = await solveRecaptcha(siteKey, page.url());

  // Inject and submit
  await page.evaluate(
    (t) => (document.getElementById("g-recaptcha-response").innerHTML = t),
    token
  );
  await page.click('button[type="submit"]');
  await page.waitForNavigation();

  console.log("Logged in:", page.url());
  await browser.close();
})();

التعامل مع العوامل المتعددة + CAPTCHA

تجمع بعض المواقع بين اختبارات CAPTCHA والمصادقة متعددة العوامل:

# Step 1: Solve CAPTCHA and submit login
token = solve_recaptcha(site_key, login_url)
resp = session.post(login_url, data={
    "username": "user@example.com",
    "password": "your_password",
    "g-recaptcha-response": token
})

# Step 2: Handle MFA page (if redirected)
if "verify" in resp.url or "mfa" in resp.url:
    # Your MFA code logic here
    mfa_code = get_mfa_code()
    resp = session.post(resp.url, data={"code": mfa_code})

# Step 3: Verify logged in
assert "dashboard" in resp.url

استكشاف الأخطاء وإصلاحها

المشكلة السبب الإجراء
يعود تسجيل الدخول إلى صفحة CAPTCHA انتهت صلاحية الرمز المميز حل وتقديم في غضون 60 ثانية
"بيانات اعتماد غير صالحة" بكلمة المرور الصحيحة رمز CSRF مفقود استخراج وتضمين رمز CSRF من صفحة تسجيل الدخول
فقدت الجلسة بعد تسجيل الدخول ملفات تعريف الارتباط لم تستمر استخدم requests.Session() أو ملفات تعريف الارتباط للمتصفح
كتل reCAPTCHA v3 على الرغم من الرمز المميز النتيجة منخفضة جدًا يعمل CaptchaAI على تحسين النتائج العالية؛ التحقق من معلمة الإجراء

الأسئلة الشائعة

هل يمكنني أتمتة عمليات تسجيل الدخول إلى أي موقع ويب؟

يعالج CaptchaAI مكون CAPTCHA. تحتاج الأتمتة الخاصة بك إلى التعامل مع نموذج تسجيل الدخول نفسه (ملء الحقول، الإرسال، إدارة ملفات تعريف الارتباط). تعتمد الشرعية على إذنك للوصول إلى الحساب.

هل أحتاج إلى متصفح لأتمتة تسجيل الدخول؟

ليس دائما. تقبل العديد من صفحات تسجيل الدخول طلبات HTTP POST القياسية. استخدم المتصفح فقط عندما يتطلب تسجيل الدخول تنفيذ JavaScript أو تفاعلات معقدة.

كيف أتعامل مع صيانة الجلسة بعد تسجيل الدخول؟

استخدم requests.Session() في Python أو احتفظ بملفات تعريف الارتباط في مثيل المتصفح الخاص بك. ملفات تعريف الارتباط للجلسة من تسجيل الدخول مطلوبة لجميع الطلبات المصادقة اللاحقة.

أدلة ذات صلة

النقاشات (0)

لا توجد تعليقات بعد.

مقالات ذات صلة

Comparisons اكتشاف الروبوتات مقابل تجريف اختبار CAPTCHA
مقارنة عملية حول اكتشاف الروبوتات مقابل تجريف اختبار CAPTCHA تركّز على الفروق في التكلفة والدقة وزمن الاستجابة وسهولة الدمج، مع التأكيد على أن الحكم النهائي يجب...

مقارنة عملية حول اكتشاف الروبوتات مقابل تجريف اختبار CAPTCHA تركّز على الفروق في التكلفة والدقة وزمن الاستجابة...

Apr 25, 2026
API Tutorials Bash + cURL + CaptchaAI: أتمتة CAPTCHA من سطر الأوامر
شرح خطوة بخطوة لـ Bash + c URL + Captcha AI: أتمتة CAPTCHA من سطر الأوامر مع أمثلة مباشرة قابلة لإعادة الاستخدام ومسار واضح لتطبيقه باستخدام Captcha AI.

شرح خطوة بخطوة لـ Bash + c URL + Captcha AI: أتمتة CAPTCHA من سطر الأوامر مع أمثلة مباشرة قابلة لإعادة الاستخد...

Apr 21, 2026
Use Cases التعامل مع CAPTCHA داخل روبوتات الأتمتة باستخدام CaptchaAI
دليل عملي حول التعامل مع CAPTCHA داخل روبوتات الأتمتة باستخدام Captcha AI يشرح السيناريوهات الواقعية ونمط التشغيل الآمن والخطوات التي تجعل هذا المسار قابلاً للت...

دليل عملي حول التعامل مع CAPTCHA داخل روبوتات الأتمتة باستخدام Captcha AI يشرح السيناريوهات الواقعية ونمط التش...

Apr 20, 2026