
Rajinder Singh
Deep Learning Researcher

क्या आपके नोड.जेएस ऑटोमेशन स्क्रिप्ट क्लाउडफ़्लेयर द्वारा लगातार ब्लॉक कर दिए जाते हैं? आप अकेले नहीं हैं। क्लाउडफ़्लेयर की शक्तिशाली सुरक्षा उपाय, जैसे जावास्क्रिप्ट चुनौतियां और "मैं हमले में हूं" मोड, बॉट्स को रोकने में प्रभावी होते हैं लेकिन वे वास्तविक वेब स्क्रैपिंग और डेटा निकालने कार्यों को भी रोक सकते हैं। इन सुरक्षा जांचों को ऑटोमेटेड स्क्रिप्ट अक्सर असफल हो जाते हैं।
इस गाइड आपको इस बाधा को पार करने में मदद करेगा। हम नोड.जेएस और CapSolver सेवा के उपयोग के माध्यम से एक स्पष्ट, चरण-दर-चरण प्रक्रिया के माध्यम से क्लाउडफ़्लेयर चुनौतियां पार करने के लिए चलेंगे। इससे आपको आवश्यक cf_clearance टोकन प्राप्त करने में मदद मिलेगी जो बिना किसी बाधा के साइट तक पहुंच के लिए आवश्यक है।
शुरू करने से पहले, निम्नलिखित सुनिश्चित करें:
पहले, हमें एक्सियॉस लाइब्रेरी के लिए HTTP मांग बनाने के लिए आवश्यकता होगी। अपने टर्मिनल खोलें और निम्नलिखित आदेश चलाएं:
npm install axios
क्लाउडफ़्लेयर चुनौती हल करने और cf_clearance टोकन प्राप्त करने के लिए नोड.जेएस और CapSolver API के साथ उदाहरण कोड नीचे दिया गया है। यह कोड AntiCloudflareTask बनाने और समाधान के लिए पॉल करने के बारे में विवरण प्रदान करता है।
यह कोड CapSolver आधिकारिक दस्तावेज़ीकरण के अंतिम अभ्यास को शामिल करता है, जो साफ संरचना और आवश्यक टिप्पणियों के साथ आता है।
const axios = require('axios');
// -------------------कृपया इन मानों को संशोधित करें-------------------
// प्रॉक्सी विवरण, जिसका रूप होता है: http://यूजरनाम:पासवर्ड@आईपी:पोर्ट
const PROXY = 'http://यूजरनाम:पासवर्ड@आईपी:पोर्ट';
// CapSolver डैशबोर्ड से अपनी API कुंजी
const CAPSOLVER_API_KEY = 'अपनीAPIकुंजी';
// लक्षित वेबसाइट का URL जहां आप क्लाउडफ़्लेयर चुनौती हल करना चाहते हैं
const PAGE_URL = 'https://www.अपनीवेबसाइट.com';
// ----------------------------------------------------------------
/**
* कैपसॉल्वर API के माध्यम से क्लाउडफ़्लेयर चुनौती हल करने के लिए एक कार्य बनाता है।
* @param {string} websiteURL - लक्षित वेबसाइट का URL।
* @param {string} proxy - उपयोग किए जाने वाले प्रॉक्सी।
* @returns {Promise<string|null>} - कार्य आईडी, या null यदि बनाने में विफल रहे।
*/
async function createCloudflareTask(websiteURL, proxy) {
console.log('कैपसॉल्वर के लिए क्लाउडफ़्लेयर कार्य बना रहे हैं...');
try {
const response = await axios.post('https://api.capsolver.com/createTask', {
clientKey: CAPSOLVER_API_KEY,
task: {
type: 'AntiCloudflareTask',
websiteURL: websiteURL,
proxy: proxy
}
});
if (response.data.errorId > 0) {
console.error(`कार्य बनाने में असफल: ${response.data.errorDescription}`);
return null;
}
console.log(`कार्य सफलतापूर्वक बनाया गया। कार्य आईडी: ${response.data.taskId}`);
return response.data.taskId;
} catch (error) {
console.error(`कार्य बनाने के दौरान एक त्रुटि हुई: ${error}`);
return null;
}
}
/**
* कार्य परिणाम पॉल करता है।
* @param {string} taskId - कैपसॉल्वर से वापस की गई कार्य आईडी।
* @returns {Promise<object|null>} - समाधान ऑब्जेक्ट, या null यदि विफल रहे।
*/
async function getTaskResult(taskId) {
console.log(`कार्य आईडी ${taskId} के लिए परिणाम प्राप्त कर रहे हैं...`);
let solution = null;
while (!solution) {
await new Promise(resolve => setTimeout(resolve, 3000)); // 3 सेकंड के लिए प्रतीक्षा करें
try {
const response = await axios.post('https://api.capsolver.com/getTaskResult', {
clientKey: CAPSOLVER_API_KEY,
taskId: taskId
});
if (response.data.errorId > 0) {
console.error(`परिणाम प्राप्त करने में असफल: ${response.data.errorDescription}`);
return null;
}
if (response.data.status === 'ready') {
console.log('समाधान सफलतापूर्वक प्राप्त कर लिया गया!');
solution = response.data.solution;
} else if (response.data.status === 'processing') {
console.log('कार्य अभी भी प्रसंस्करण में है, कृपया प्रतीक्षा करें...');
} else if (response.data.status === 'failed') {
console.error(`कार्य प्रसंस्करण असफल: ${response.data.errorDescription}`);
return null;
}
} catch (error) {
console.error(`परिणाम प्राप्त करने के दौरान एक त्रुटि हुई: ${error}`);
return null;
}
}
return solution;
}
/**
* पूरी प्रक्रिया के लिए मुख्य कार्य करता है।
*/
async function main() {
console.log('क्लाउडफ़्लेयर चुनौती हल करना शुरू कर रहे हैं...');
const taskId = await createCloudflareTask(PAGE_URL, PROXY);
if (!taskId) {
console.log('कार्य बनाने में असफल, बाहर निकल रहे हैं।');
return;
}
const solution = await getTaskResult(taskId);
if (!solution) {
console.log('समाधान प्राप्त करने में असफल, बाहर निकल रहे हैं।');
return;
}
console.log('समाधान विवरण प्राप्त कर लिया गया है:');
console.log(solution);
// अब आप लक्षित वेबसाइट तक पहुंचने के लिए प्राप्त किए गए कुकीज और यूजर-एजेंट का उपयोग कर सकते हैं।
// समाधान ऑब्जेक्ट में 'url', 'status', 'headers', 'cookies', 'userAgent' होता है।
// उदाहरण: कैसे प्राप्त किए गए कुकीज और यूजर-एजेंट का उपयोग एक मांग बनाने के लिए करें
try {
const cfCookie = solution.cookies.map(cookie => `${cookie.name}=${cookie.value}`).join('; ');
console.log('\nप्राप्त किए गए कुकीज और यूजर-एजेंट के साथ लक्षित पृष्ठ पर पहुंच रहे हैं...');
const pageResponse = await axios.get(PAGE_URL, {
headers: {
'User-Agent': solution.userAgent,
'Cookie': cfCookie
},
// अगले मांगों के लिए एक विशिष्ट प्रॉक्सी-सक्षम एक्सियॉस इंस्टेंस का उपयोग करने की सलाह दी जाती है।
proxy: false,
});
console.log(`\nसफलतापूर्वक पहुंच प्राप्त कर ली! पृष्ठ स्थिति कोड: ${pageResponse.status}`);
// console.log('पृष्ठ सामग्री:', pageResponse.data); // पृष्ठ सामग्री देखने के लिए अनकमेंट करें
} catch (error) {
console.error(`\nसमाधान के साथ पृष्ठ पर पहुंचने में त्रुटि: ${error.response ? error.response.status : error.message}`);
}
}
main();
कोड चलाने से पहले, निम्नलिखित चर को बदलना सुनिश्चित करें:
PROXY: अपने प्रॉक्सी सर्वर के पते और प्रमाणीकरण से इसे बदलें। रूप होना चाहिए http://यूजरनाम:पासवर्ड@आईपी:पोर्ट।CAPSOLVER_API_KEY: अपनी API कुंजी कैपसॉल्वर डैशबोर्ड में ढूंढें और स्थानापन्न करें।PAGE_URL: लक्षित वेबसाइट के पते से इसे बदलें जो क्लाउडफ़्लेयर द्वारा सुरक्षित है।कैपसॉल्वर के साथ एकीकरण के माध्यम से विकासकर्ता अपने नोड.जेएस एप्लिकेशन में क्लाउडफ़्लेयर चुनौतियों के साथ जटिल प्रक्रिया को स्वचालित कर सकते हैं। इस प्रकार आपको अक्सर बदलती सुरक्षा नीतियों से बचने के लिए बाहर निकलने की आवश्यकता नहीं होगी। आप सिर्फ एक API कॉल करते हैं और cf_clearance टोकन और मेल करने वाला User-Agent प्राप्त करते हैं, जो आपके लक्षित वेबसाइट तक बिना किसी बाधा के पहुंच के लिए सक्षम करता है। यह रणनीति अस्थिर, बड़े पैमाने पर डेटा संग्रह की आवश्यकता वाले किसी भी परियोजना के लिए आवश्यक है। अगर आप गहराई से जानकारी चाहते हैं, तो हमारा गाइड क्लाउडफ़्लेयर 5 सेकंड चुनौती कैसे हल करें वेब स्क्रैपिंग के लिए अतिरिक्त तकनीकी विवरण प्रदान करता है।
Q1: मुझे प्रॉक्सी क्यों उपयोग करना चाहिए?
A1: क्लाउडफ़्लेयर असामान्य गतिविधि के लिए आईपी पतों की निगरानी करता है। एक ही आईपी कई मांगों के लिए चिह्नित किया जा सकता है। उच्च गुणवत्ता वाले घूमते प्रॉक्सी (जैसे निवासी या आईएसपी प्रॉक्सी) वास्तविक उपयोगकर्ता व्यवहार के समान होते हैं और आपकी सफलता दर बढ़ाते हैं।
Q2: cf_clearance टोकन कितने समय तक वैध रहता है?
A2: cf_clearance टोकन आमतौर पर कुछ घंटों के लिए वैध रहता ह, हालांकि ठीक समय अवधि वेबसाइट के क्लाउडफ़्लेयर सेटिंग्स पर निर्भर करती है। जब यह समाप्त हो जाता है, तो आपको फिर से इस प्रक्रिया को चलाना होगा ताकि एक नया टोकन प्राप्त कर सकें।
Q3: क्या मैं अपने स्क्रैपर में प्राप्त किए गए कुकी का उपयोग कर सकता हूं?
A3: हां। कैपसॉल्वर से समाधान प्राप्त करने के बाद, आपको सभी अगले HTTP मांगों में cf_clearance कुकी और मेल करने वाला User-Agent शामिल करना आवश्यक है। आवश्यकता है कि आप उसी प्रॉक्सी आईपी का उपयोग करें जिसका उपयोग टोकन बनाने के लिए किया गया था। यह गाइड नोड.जेएस पर केंद्रित है, लेकिन अन्य भाषाओं के लिए इसी सिद्धांत लागू होते हैं। उदाहरण के लिए, हमारे अन्य पोस्ट में पायथन और सेलेनियम के साथ क्लाउडफ़्लेयर कैप्चा कैसे हल करें के बारे में जानकारी प्राप्त कर सकते हैं।
Q4: कैपसॉल्वर कैसे अन्य प्रकार के कैप्चा हल कर सकता है?
A4: कैपसॉल्वर क्लाउडफ़्लेयर के अलावा विभिन्न प्रकार के चुनौतियां, जैसे विभिन्न प्रकार के reCAPTCHA और छवि आधारित कैप्चा के साथ अच्छी तरह से संचालित करता है। अपने लिए सबसे प्रभावी समाधानों के बारे में जानने के लिए, हमारे 2026 में क्लाउडफ़्लेयर चुनौती हल करने वाले शीर्ष उपाय के बारे में अपडेट करें। अधिक जानकारी के लिए, आधिकारिक कैपसॉल्वर दस्तावेज़ीकरण के बारे में जांचें।
क्लाउडफ़्लेयर चैलेंज वर्सेस टर्नस्टाइल के मुख्य अंतर समझें और सफल वेब ऑटोमेशन के लिए उन्हें पहचानना सीखें। विशेषज्ञ सुझाव प्राप्त करें एवं एक सुझाए गए समाधानकर्ता।

जब वेब स्क्रैपिंग करते हैं तो क्लाउडफ़ेयर सुरक्षा कैसे हल करें। साबित विधियां जैसे कि IP परिवर्तन, TLS फिंगरप्रिंटिंग, और CapSolver की खोज करें।
