Playwright
स्क्रैपिंग ब्राउज़र एक उच्च-प्रदर्शन सर्वरलेस प्लेटफ़ॉर्म प्रदान करता है जो गतिशील वेबसाइटों से डेटा निष्कर्षण की प्रक्रिया को सरल बनाने के लिए डिज़ाइन किया गया है। Playwright के साथ सहज एकीकरण के माध्यम से, डेवलपर्स समर्पित सर्वर संसाधनों की आवश्यकता के बिना हेडलेस ब्राउज़र चला सकते हैं, प्रबंधित कर सकते हैं और मॉनिटर कर सकते हैं, जिससे कुशल वेब ऑटोमेशन और डेटा संग्रह संभव होता है।
आवश्यक लाइब्रेरीज़ स्थापित करना
सबसे पहले, playwright-core स्थापित करें, जो मौजूदा ब्राउज़र इंस्टेंस से कनेक्ट करने के लिए उपयोग किए जाने वाले Playwright का एक हल्का संस्करण है:
npm install playwright-core
स्क्रैपिंग ब्राउज़र से कनेक्ट करने के लिए कोड लिखना
अपने Playwright कोड में, निम्नलिखित का उपयोग करके स्क्रैपिंग ब्राउज़र से कनेक्ट करें:
const { Playwright } = require('@scrapeless-ai/sdk');
(async () => {
const browser = await Playwright.connect({
apiKey: 'Your API key',
session_name: 'sdk_test',
session_ttl: 180,
proxy_country: 'US',
session_recording: true,
});
const context = browser.contexts()[0];
const page = await context.newPage();
await page.goto('https://www.scrapeless.com');
console.log(await page.title());
await browser.close();
})();
यह आपको स्क्रैपिंग ब्राउज़र के बुनियादी ढाँचे का लाभ उठाने की अनुमति देता है, जिसमें स्केलेबिलिटी, आईपी रोटेशन और वैश्विक पहुँच शामिल है।
व्यावहारिक उदाहरण
स्क्रैपिंग ब्राउज़र को एकीकृत करने के बाद कुछ सामान्य Playwright ऑपरेशन यहां दिए गए हैं:
- नेविगेशन और पृष्ठ सामग्री निष्कर्षण
const page = await browser.newPage();
await page.goto('https://www.example.com');
console.log(await page.title());
const html = await page.content();
console.log(html);
await browser.close();
- स्क्रीनशॉट लेना
const context = browser.contexts()[0];
const page = await context.newPage();
await page.goto('https://www.example.com');
await page.screenshot({ path: 'example.png' });
console.log('Screenshot saved as example.png');
await browser.close();
- कस्टम कोड चलाना
const context = browser.contexts()[0];
const page = await context.newPage();
await page.goto('https://www.example.com');
const result = await page.evaluate(() => document.title);
console.log('Page title:', result);
await browser.close();
- माउस क्लिक अनुकरण करें।
const { createPlaywrightCDPSession } = require('@scrapeless-ai/sdk');
// ... connect to Scraping Browser as shown above
const cdpSession = await createPlaywrightCDPSession(page);
await cdpSession.realClick('button[type="submit"]');
- कीबोर्ड इनपुट अनुकरण करें।
const { createPlaywrightCDPSession } = require('@scrapeless-ai/sdk');
// ... connect to Scraping Browser as shown above
const cdpSession = await createPlaywrightCDPSession(page);
await cdpSession.realFill('#login-email', 'scrapeless@gmail.com');
- स्क्रैपलेस एजेंट का उपयोग करके वर्तमान पृष्ठ URL प्राप्त करें
const { createPlaywrightCDPSession } = require('@scrapeless-ai/sdk');
// ... connect to Scraping Browser as shown above
const cdpSession = await createPlaywrightCDPSession(page);
const { error, liveURL } = await cdpSession.liveURL();
- इमेज कैप्चा को हल करें
const { createPlaywrightCDPSession } = require('@scrapeless-ai/sdk');
// ... connect to Scraping Browser as shown above
const cdpSession = await createPlaywrightCDPSession(page);
await cdpSession.imageToText({
imageSelector: '.captcha__image',
inputSelector: 'input[name="captcha"]',
timeout: 30000,
});
- स्वचालित कैप्चा समाधान अक्षम करें
const { createPlaywrightCDPSession } = require('@scrapeless-ai/sdk');
// ... connect to Scraping Browser as shown above
const cdpSession = await createPlaywrightCDPSession(page);
await cdpSession.disableCaptchaAutoSolve();
- निर्दिष्ट विकल्पों के साथ मैन्युअल रूप से कैप्चा को हल करें
const { createPlaywrightCDPSession } = require('@scrapeless-ai/sdk');
// ... connect to Scraping Browser as shown above
const cdpSession = await createPlaywrightCDPSession(page);
await cdpSession.solveCaptcha();
- पृष्ठ पर कैप्चा का पता लगाने की प्रतीक्षा करें
const { createPlaywrightCDPSession } = require('@scrapeless-ai/sdk');
// ... connect to Scraping Browser as shown above
const cdpSession = await createPlaywrightCDPSession(page);
await cdpSession.waitCaptchaDetected({ timeout: 30000 });
- कैप्चा के हल होने (या तो सफलतापूर्वक या असफल) की प्रतीक्षा करें
const { createPlaywrightCDPSession } = require('@scrapeless-ai/sdk');
// ... connect to Scraping Browser as shown above
const cdpSession = await createPlaywrightCDPSession(page);
await cdpSession.waitCaptchaSolved({ timeout: 30000 });