CDP API
Scrapeless स्क्रैपिंग ब्राउज़र मानक CDP (Chrome DevTools Protocol) कार्यक्षमता का विस्तार करता है, ब्राउज़र ऑटोमेशन क्षमताओं को बढ़ाने के लिए शक्तिशाली कस्टम फ़ंक्शंस की एक श्रृंखला जोड़ता है। यह दस्तावेज़ मुख्य रूप से CAPTCHA हैंडलिंग से संबंधित CDP फ़ंक्शंस को कवर करता है।
CAPTCHA सॉल्वर सुविधाएँ
सुविधा अवलोकन
स्क्रैपिंग ब्राउज़र में उन्नत CAPTCHA समाधान सुविधाएँ शामिल हैं, जो वेब पेजों पर सामने आने वाले प्रचलित CAPTCHA प्रकारों को स्वचालित रूप से संभालने में सक्षम हैं।
समर्थित CAPTCHA प्रकार
- reCaptcha
- Cloudflare Turnstile
- Cloudflare 5s Challenge
- AWS WAF
ईवेंट मॉनिटरिंग तंत्र
कोर ईवेंट्स
स्क्रैपिंग ब्राउज़र CAPTCHA समाधान प्रक्रिया की निगरानी के लिए तीन कोर ईवेंट प्रदान करता है:
ईवेंट का नाम | विवरण |
---|---|
Captcha.detected | CAPTCHA पता चला |
Captcha.solveFinished | CAPTCHA समाधान पूर्ण |
Captcha.solveFailed | CAPTCHA समाधान विफल |
ईवेंट प्रतिक्रिया डेटा संरचना
फ़ील्ड | प्रकार | विवरण |
---|---|---|
type | string | CAPTCHA प्रकार: recaptcha turnstile |
success | boolean | समाधान परिणाम |
message | string | स्थिति संदेश: "NOT_DETECTED" "SOLVE_FINISHED" "SOLVE_FAILED" "INVALID" |
token? | string | सफलता पर लौटाया गया टोकन (वैकल्पिक) |
कार्यान्वयन उदाहरण
// CAPTCHA समाधान ईवेंट के लिए सुनें
const client = await page.createCDPSession();
client.on('Captcha.detected', (result) => {
console.log('Captcha detected:', result);
});
await new Promise((resolve, reject) => {
client.on('Captcha.solveFinished', (result) => {
if (result.success) resolve();
});
client.on('Captcha.solveFailed', () =>
reject(new Error('Captcha solve failed'))
);
setTimeout(() =>
reject(new Error('Captcha solve timeout')),
5 * 60 * 1000
);
});
उन्नत कॉन्फ़िगरेशन API
स्क्रैपिंग ब्राउज़र CAPTCHA सॉल्वर के व्यवहार पर बारीक नियंत्रण के लिए उन्नत API की एक श्रृंखला प्रदान करता है। निम्नलिखित API समर्थित हैं:
API का नाम | विवरण |
---|---|
Captcha.setAutoSolve | स्वचालित CAPTCHA समाधान व्यवहार को नियंत्रित करता है |
Captcha.setToken | CAPTCHA सेवा के लिए प्रमाणीकरण टोकन सेट करता है |
Captcha.setConfig | सभी CAPTCHA सॉल्वर पैरामीटर कॉन्फ़िगर करता है |
Captcha.solve | मैन्युअल रूप से CAPTCHA समाधान प्रक्रिया को ट्रिगर करता है |
विस्तृत API विवरण
1. Captcha.setAutoSolve
स्वचालित CAPTCHA समाधान व्यवहार को नियंत्रित करने के लिए कॉन्फ़िगरेशन इंटरफ़ेस।
const client = await page.createCDPSession();
await client.send('Captcha.setAutoSolve', {
autoSolve: false,
options: [{
type: 'recaptcha', // विकल्प: recaptcha | turnstile
disabled: false,
}]
});
2. Captcha.setToken
CAPTCHA समाधान सेवा के लिए प्रमाणीकरण टोकन सेट करता है।
await client.send('Captcha.setToken', {
apiKey: 'your-token'
});
3. Captcha.setConfig
CAPTCHA सॉल्वर के सभी पैरामीटर कॉन्फ़िगर करता है।
await client.send('Captcha.setConfig', {
config: JSON.stringify(
{
apiKey: "your-token",
autoSolve: true,
enabledForRecaptcha: true,
enabledForRecaptchaV3: true,
enabledForTurnstile: true
}
)
});
4. Captcha.solve
मैन्युअल रूप से CAPTCHA समाधान प्रक्रिया को ट्रिगर करता है।
const result = await client.send('Captcha.solve', {
detectTimeout: 10 * 1000,
options: JSON.stringify([{
type: 'rcaptcha',
disabled: true, // rCaptcha समाधान अक्षम करें
}])
});
console.log(result); // { type: 'recaptcha', success: true, message: 'solve_finished', token: 'xxx' }