इस लेख में हमने आपकी सभी महत्वपूर्ण शंकाओं के जवाब देने की कोशिश की है। किसी भी समस्या को हल करना शुरू करने का पहला कदम यह तय करना है कि कौन-सा सुरक्षा सिस्टम उपयोग में है। इसके लिए आप लोकप्रिय कैप्चा और एंटी-बॉट सुरक्षा सिस्टमों की सूची देख सकते हैं, जहाँ ऐसे दृश्य उदाहरण और मुख्य संकेत दिए गए हैं जो यह जल्दी समझने में मदद करते हैं कि आप किस समाधान के साथ काम कर रहे हैं।
यदि आपको पता चलता है कि आपकी साइट पर GeeTest CAPTCHA v4 उपयोग हो रहा है, तो अगला कदम इसके गुणों और काम करने के तरीके को और विस्तार से समझना है। इसी लेख में आप GeeTest CAPTCHA v4 सिस्टम को जोड़ने (इंटीग्रेट करने) की निर्देशिका भी देख सकते हैं, ताकि आप पूरी तरह समझ सकें कि यह आपकी साइट पर कैसे काम करता है। इससे आप न केवल मौजूदा सुरक्षा को बेहतर ढंग से समझ पाएँगे, बल्कि उसकी सपोर्ट और रखरखाव की सही योजना भी बना सकेंगे।
GeeTest CAPTCHA v4 वाले फॉर्म का परीक्षण करते समय अक्सर यह जाँचना पड़ता है कि कैप्चा सही ढंग से काम कर रही है और सही तरह से जोड़ी गई है।
आप अपने साइट पर लगी कैप्चा को मैन्युअली जाँच सकते हैं।
स्वचालित समाधान के लिए आप CapMonster Cloud जैसे टूल का उपयोग कर सकते हैं, जो कैप्चा के पैरामीटर स्वीकार करता है, उन्हें अपने सर्वर पर प्रोसेस करता है और तैयार टोकन लौटाता है। इस टोकन को फॉर्म में डालें और बिना उपयोगकर्ता हस्तक्षेप के जाँच पार करें।
API के माध्यम से CapMonster Cloud के साथ काम करने के सामान्य चरण:
GeeTest CAPTCHA v4 को हल करने के रिक्वेस्ट में आपको निम्न पैरामीटर देना ज़रूरी है:
type - GeeTestTask;
websiteURL - उस पेज का ऐड्रेस, जहाँ CAPTCHA हल की जा रही है;
gt - डोमेन के लिए GeeTest पहचान-की (identifier key) — पैरामीटर captcha_id;
version - 4;
geetestApiServerSubdomain - GeeTest API सर्वर का सबडोमेन (api.geetest.com से अलग होना चाहिए);
geetestGetLib - CAPTCHA को पेज पर दिखाने के लिए उसके स्क्रिप्ट का पाथ। कुछ साइटों के लिए यह पैरामीटर जरूरी हो सकता है;
initParameters - v4 के लिए अतिरिक्त पैरामीटर, जिन्हें “riskType” (CAPTCHA का प्रकार / उसकी वेरिफिकेशन की विशेषताएँ) के साथ प्रयोग किया जाता है.
https://api.capmonster.cloud/createTask{
"clientKey": "YOUR_CAPMONSTER_CLOUD_API_KEY",
"task": {
"type": "GeeTestTask",
"websiteURL": "https://gt4.geetest.com/",
"gt": "54088bb07d2df3c46b79f80300b0abbe",
"version": 4,
"initParameters": {
"riskType": "slide"
}
}
}{
"errorId":0,
"taskId":407533072
}https://api.capmonster.cloud/getTaskResult{
"clientKey":"API_KEY",
"taskId": 407533072
}{
"errorId": 0,
"status": "ready",
"solution": {
"captcha_id": "f5c2ad5a8a3cf37192d8b9c039950f79",
"lot_number": "bcb2c6ce2f8e4e9da74f2c1fa63bd713",
"pass_token": "edc7a17716535a5ae624ef4707cb6e7e478dc557608b068d202682c8297695cf",
"gen_time": "1683794919",
"captcha_output": "XwmTZEJCJEnRIJBlvtEAZ662T...[cut]...SQ3fX-MyoYOVDMDXWSRQig56"
}
}
// npm install playwright @zennolab_com/capmonstercloud-client
import { chromium } from "playwright";
import {
CapMonsterCloudClientFactory,
ClientOptions,
GeeTestRequest
} from "@zennolab_com/capmonstercloud-client";
const CAPMONSTER_API_KEY = "YOUR_CAPMONSTER_API_KEY";
async function solveGeetestV4(pageUrl) {
const browser = await chromium.launch({ headless: false });
const context = await browser.newContext({ viewport: null });
const page = await context.newPage();
let detected = null;
let solutionObj = null;
// 1. /load रिस्पॉन्स को इंटरसेप्ट करें (captcha_id, challenge आदि निर्धारित करें)
page.on("response", async (response) => {
const url = response.url();
if (!url.startsWith("https://gcaptcha4.geetest.com/load?")) return;
const params = new URLSearchParams(url.split("?")[1] || "");
const captchaId = params.get("captcha_id");
const challenge = params.get("challenge");
const captchaType = params.get("captcha_type");
if (captchaId && challenge) {
detected = { captchaId, challenge, captchaType };
console.log("Detected GeeTest v4 load:", detected);
}
});
// 2. पेज लोड करें
console.log("Opening page:", pageUrl);
await page.goto(pageUrl, { waitUntil: "domcontentloaded" });
// 3. /load इंटरसेप्ट होने तक इंतज़ार करें
console.log("Waiting for GeeTest /load...");
while (!detected) {
await page.waitForTimeout(500);
}
// 4. टास्क को CapMonster Cloud में भेजें
console.log("Sending task to CapMonster...");
const cmc = CapMonsterCloudClientFactory.Create(
new ClientOptions({ clientKey: CAPMONSTER_API_KEY })
);
const task = new GeeTestRequest({
websiteURL: pageUrl,
gt: detected.captchaId,
challenge: detected.challenge,
version: "4",
initParameters: {
riskType: detected.captchaType || "slide"
}
});
const solveRes = await cmc.Solve(task);
const sol = solveRes.solution || solveRes;
solutionObj = {
captcha_id: sol.captcha_id || detected.captchaId,
captcha_output: sol.captcha_output,
lot_number: sol.lot_number,
pass_token: sol.pass_token
};
console.log("Got solution from CapMonster:", solutionObj);
// 5. सफल उत्तर प्राप्त करने के लिए /verify में अपनी वैल्यूज़ डालें
await page.route("https://gcaptcha4.geetest.com/verify*", async (route) => {
console.log("Intercepted /verify, injecting fake success...");
const body = `geetest_${Date.now()}(${JSON.stringify({
status: "success",
data: {
result: "success",
seccode: {
captcha_id: solutionObj.captcha_id,
captcha_output: solutionObj.captcha_output,
lot_number: solutionObj.lot_number,
pass_token: solutionObj.pass_token
}
}
})})`;
await route.fulfill({
status: 200,
contentType: "application/javascript",
body
});
});
// 6. यूज़र की क्रिया (जैसे CAPTCHA बटन पर क्लिक) को एम्युलेट करें
console.log("Waiting for captcha interaction...");
await page.waitForTimeout(3000);
// वेरिफिकेशन कॉल का उदाहरण:
try {
await page.click('.geetest_btn'); // CAPTCHA बटन
console.log("Clicked captcha button");
} catch {
console.log("Captcha button not found");
}
// कभी-कभी verify() को मैन्युअली कॉल करना पड़ता है:
await page.evaluate(() => {
if (window.initGeetest4 && typeof verify === "function") {
verify();
}
});
console.log("Waiting for verification request...");
await page.waitForTimeout(3000);
await browser.close();
return { detected, solution: solutionObj };
}
(async () => {
const url = "https://example.com"; // इसे GeeTest v4 वाले पेज से बदलें
const res = await solveGeetestV4(url);
console.log("FINISHED:", res);
})();
1. GeeTest अकाउंट में रजिस्टर करें या लॉगिन करें
2. Captcha Dashboard पर जाएँ और Behavior Verification v4 चुनें:

3. डैशबोर्ड में + Create application पर क्लिक करें
4. APP/website name भरें (उस साइट या ऐप का नाम जहाँ CAPTCHA इस्तेमाल होगी), Address (साइट का मुख्य डोमेन, जहाँ CAPTCHA लगाई जाएगी, जैसे https://example.com), Industry (साइट की कैटेगरी, जैसे “E-commerce”, “Social Media” आदि), फिर Confirm पर क्लिक करें
5. हाल ही में बनाई गई एप्लिकेशन के नाम के पास Add events पर क्लिक करें। Event सेट करें — वह विशेष scenario (इवेंट) जहाँ CAPTCHA उपयोग होगी, जैसे login, register आदि; Device — प्लेटफ़ॉर्म (जैसे Web/Wap); Business types — CAPTCHA उपयोग का प्रकार (जैसे Sign-up / Sign-in — रजिस्ट्रेशन / लॉगिन)। उसके बाद Add पर क्लिक करें
6. अब आपके पर्सनल कैबिनेट में बनाई गई CAPTCHA के लिए ID (क्लाइंट और सर्वर दोनों पर उपयोग होती है) और Key (सर्वर पर वेरिफिकेशन के लिए उपयोग होती है) दिखाई देंगी:

7. क्लाइंट-साइड कनेक्ट करें
स्क्रिप्ट कनेक्ट करें:
<script src="https://static.geetest.com/v4/gt4.js"></script>CAPTCHA को इनिशियलाइज़ करें:
initGeetest4(
{ captchaId: "Your CaptchaId" },
function (captcha) {
captcha.appendTo("#captcha"); // पेज के एलिमेंट में вставляем
}
);महत्वपूर्ण:
<!-- CAPTCHA स्क्रिप्ट подключаем -->
<script src="https://static.geetest.com/v4/gt4.js"></script>
</head>
<body>
<h1>CAPTCHA Demo</h1>
<!-- CAPTCHA के लिए контейнер -->
<div id="captcha"></div>
<script>
// CAPTCHA इनिशियलाइज़ेशन
initGeetest4(
{
captchaId: "YOUR_CAPTCHA_ID" // अपना CaptchaId डालें
},
function (captcha) {
// CAPTCHA को पेज के एलिमेंट में вставाते हैं
captcha.appendTo("#captcha");
// यहाँ आप सफल वेरिफिकेशन को हैंडल कर सकते हैं
captcha.onSuccess(function() {
const validate = captcha.getValidate();
console.log("CAPTCHA passed!", validate);
// यहाँ आप validate को सर्वर पर भेजकर वेरिफिकेशन करा सकते हैं
});
}
);
</script>
8. सर्वर-साइड सेटअप करें
जब उपयोगकर्ता फ्रंटएंड पर CAPTCHA पास करता है, तो पैरामीटर का एक सेट जेनरेट होता है। इन पैरामीटरों को बैकएंड पर भेजना और फिर GeeTest के secondary API के जरिए चेक करना ज़रूरी है, ताकि यह पुष्टि हो सके कि वेरिफिकेशन सफल रही।
सेकेंडरी वेरिफिकेशन API:
http://gcaptcha4.geetest.com/validateरिक्वेस्ट के मुख्य पैरामीटर
{
"status": "success",
"result": "success",
"reason": "",
"captcha_args": {
"used_type": "slide",
"user_ip": "127.0.0.1",
"lot_number": "4dc3cfc2cdff448cad8d13107198d473",
"scene": "anti crawler",
"referer": "http://127.0.0.1:8077/"
}
}<?php
$captcha_id = 'YOUR_CAPTCHA_ID';
$captcha_key = 'YOUR_CAPTCHA_KEY';
$api_server = 'http://gcaptcha4.geetest.com';
// फ्रंटएंड से पैरामीटर प्राप्त करते हैं
$lot_number = $_POST['lot_number'] ?? '';
$captcha_output = $_POST['captcha_output'] ?? '';
$pass_token = $_POST['pass_token'] ?? '';
$gen_time = $_POST['gen_time'] ?? '';
// सिग्नेचर जेनरेट करते हैं
$sign_token = hash_hmac('sha256', $lot_number, $captcha_key);
// रिक्वेस्ट के डेटा तैयार करते हैं
$data = [
'lot_number' => $lot_number,
'captcha_output' => $captcha_output,
'pass_token' => $pass_token,
'gen_time' => $gen_time,
'sign_token' => $sign_token
];
// secondary verification API को रिक्वेस्ट
$url = $api_server . '/validate?captcha_id=' . $captcha_id;
$options = [
'http' => [
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data),
'timeout' => 5
]
];
$context = stream_context_create($options);
$result = @file_get_contents($url, false, $context);
if ($result === FALSE) {
$response = ['login' => 'fail', 'reason' => 'request geetest api fail'];
} else {
$gt_msg = json_decode($result, true);
if ($gt_msg['result'] === 'success') {
$response = ['login' => 'success', 'reason' => $gt_msg['reason']];
} else {
$response = ['login' => 'fail', 'reason' => $gt_msg['reason']];
}
}
echo json_encode($response);
?>
अगर आपके पास ऐसा साइट आया है, जिस पर पहले से ही कोई कैप्चा या अन्य सुरक्षा प्रणाली लगी हुई है और आपके पास कोड तक पहुंच नहीं है — तो घबराने की ज़रूरत नहीं है! यह पता लगाना काफ़ी आसान है कि वास्तव में कौन-सी तकनीक इस्तेमाल हो रही है। काम की सही जाँच के लिए आप अलग-थलग टेस्ट वातावरण में CapMonster Cloud पहचान सेवा का उपयोग कर सकते हैं, ताकि यह सुनिश्चित हो सके कि टोकन प्रोसेसिंग का मेकैनिज़्म और वेरिफिकेशन लॉजिक ठीक तरह से काम कर रहे हैं।
GeeTest CAPTCHA v4 के मामले में सिस्टम की पहचान करना, उसके व्यवहार का विश्लेषण करना और यह सुनिश्चित करना ही काफ़ी है कि सुरक्षा सही तरीके से काम कर रही है। इस लेख में हमने दिखाया है कि GeeTest CAPTCHA v4 को कैसे पहचाना जाए और इसे जोड़ने या दोबारा कॉन्फ़िगर करने की निर्देशिका कहाँ मिलेगी, ताकि आप आत्मविश्वास के साथ सुरक्षा को बनाए रख सकें और इसके काम को नियंत्रित कर सकें।