NEWواجهات API القياسية createTask وin.php. غيّر العنوان وستكون متصلاً.عرض توثيق API
GATESOLVER
ابدأ الآن

ربط أدوات الأتمتة

الطريقة واحدة مع أي أداة: اقرأ مفتاح الموقع من الصفحة، واستلم الحل عبر API، ثم ضعه في الصفحة. ابدأ بلصق أمثلة الأدوات الشائعة كما هي.

Selenium

افتح الصفحة باستخدام Selenium، واقرأ مفتاح الموقع، واستلم الرمز عبر API، ثم ضعه في حقل g-recaptcha-response.

  1. 1قراءة data-sitekey من الصفحة
  2. 2إنشاء مهمة عبر createTask
  3. 3ضع الرمز في الحقل المخفي وأرسل النموذج
from selenium import webdriver
from selenium.webdriver.common.by import By
import requests, time

API, KEY = "https://gatesolver.com", "YOUR_API_KEY"
driver = webdriver.Chrome()
driver.get("https://www.google.com/recaptcha/api2/demo")
site_key = driver.find_element(By.CSS_SELECTOR, "[data-sitekey]").get_attribute("data-sitekey")

task = requests.post(f"{API}/createTask", json={"clientKey": KEY, "task": {
    "type": "ReCaptchaV2TaskProxyLess", "websiteURL": driver.current_url, "websiteKey": site_key}}).json()
while True:
    time.sleep(3)
    r = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if r.get("status") == "ready":
        break

driver.execute_script("document.getElementById('g-recaptcha-response').innerHTML = arguments[0]", r["solution"]["gRecaptchaResponse"])
driver.find_element(By.ID, "recaptcha-demo-submit").click()

Playwright

اقرأ مفتاح موقع Turnstile في Playwright، ثم ضع الرمز المستلم في حقل cf-turnstile-response.

  1. 1قراءة مفتاح الموقع
  2. 2استلام الرمز عبر API
  3. 3إدخال الرمز وإرساله
import { chromium } from "playwright";
const API = "https://gatesolver.com", KEY = "YOUR_API_KEY";
const post = (p, b) => fetch(API + p, { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify(b) }).then((r) => r.json());

const browser = await chromium.launch();
const page = await browser.newPage();
await page.goto("https://example.com/login");
const siteKey = await page.getAttribute(".cf-turnstile", "data-sitekey");

const { taskId } = await post("/createTask", { clientKey: KEY, task: { type: "AntiTurnstileTaskProxyLess", websiteURL: page.url(), websiteKey: siteKey } });
let r;
do { await page.waitForTimeout(3000); r = await post("/getTaskResult", { clientKey: KEY, taskId }); } while (r.status === "processing");

await page.evaluate((tk) => { document.querySelector("[name=cf-turnstile-response]").value = tk; }, r.solution.token);
await page.click("button[type=submit]");

Puppeteer

استلم رمز reCAPTCHA v3 عبر Puppeteer وأضفه إلى الطلب الذي يرسله الموقع. اجعل قيمة pageAction مطابقة للموقع.

  1. 1العثور على مفتاح الموقع وقيمة action
  2. 2استلام رمز v3 عبر API
  3. 3إضافة الرمز إلى الطلب
import puppeteer from "puppeteer";
const API = "https://gatesolver.com", KEY = "YOUR_API_KEY";
const post = (p, b) => fetch(API + p, { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify(b) }).then((r) => r.json());

const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto("https://example.com/signup");

const { taskId } = await post("/createTask", { clientKey: KEY, task: {
  type: "ReCaptchaV3TaskProxyLess", websiteURL: page.url(), websiteKey: "6Lc...", pageAction: "signup" } });
let r;
do { await new Promise((s) => setTimeout(s, 3000)); r = await post("/getTaskResult", { clientKey: KEY, taskId }); } while (r.status === "processing");

await page.evaluate((tk) => { document.querySelector("#g-recaptcha-response").value = tk; }, r.solution.gRecaptchaResponse);

n8n

أنشئ المهمة واستلم النتيجة باستخدام عقدتي HTTP Request في n8n، مع انتظار 3 ثوانٍ عبر عقدة Wait.

  1. 1HTTP Request: createTask
  2. 2Wait: 3 ثوانٍ
  3. 3HTTP Request: getTaskResult
Method: POST
URL: https://gatesolver.com/createTask
Body (JSON):
{
  "clientKey": "YOUR_API_KEY",
  "task": { "type": "ReCaptchaV2TaskProxyLess", "websiteURL": "{{ $json.url }}", "websiteKey": "{{ $json.sitekey }}" }
}

Method: POST
URL: https://gatesolver.com/getTaskResult
Body (JSON): { "clientKey": "YOUR_API_KEY", "taskId": "{{ $json.taskId }}" }

مكتبات in.php

المكتبات المبنية لتنسيق in.php تعمل أيضًا مع GateSolver بمجرد تغيير عنوان الخادم.

  1. 1إدخال قيمة server في المكتبة
  2. 2إدخال مفتاح API
  3. 3استدعِ كالمعتاد
import time, requests

B = "https://gatesolver.com"
r = requests.get(f"{B}/in.php", params={"key": "YOUR_API_KEY", "method": "userrecaptcha",
    "googlekey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-", "pageurl": "https://www.google.com/recaptcha/api2/demo", "json": 1}).json()
while True:
    time.sleep(3)
    res = requests.get(f"{B}/res.php", params={"key": "YOUR_API_KEY", "action": "get", "id": r["request"], "json": 1}).json()
    if res["request"] != "CAPCHA_NOT_READY":
        break
print(res["request"])