SDKNode.js SDK

नोड SDK

स्थापना

Scrapeless नोड SDK स्थापित करने के लिए, आप npm का उपयोग कर सकते हैं:

npm install @scrapeless-ai/sdk

त्वरित शुरुआत

  1. Scrapeless डैशबोर्ड में लॉग इन करें और API कुंजी प्राप्त करें get-api-key.png
  2. API कुंजी को SCRAPELESS_API_KEY नामक एक पर्यावरण चर के रूप में सेट करें या इसे Scrapeless क्लास में एक पैरामीटर के रूप में पास करें।

यहाँ एक बुनियादी उदाहरण दिया गया है:

import { Scrapeless } from '@scrapeless-ai/sdk';
 
const client = new Scrapeless({
  apiKey: 'YOUR_API_KEY' // or use SCRAPELESS_API_KEY env variable
});

उपलब्ध सेवाएँ

1. स्क्रैपिंग ब्राउज़र (ब्राउज़र ऑटोमेशन रैपर)

स्क्रैपिंग ब्राउज़र मॉड्यूल Scrapeless ब्राउज़र API के शीर्ष पर निर्मित ब्राउज़र ऑटोमेशन के लिए एक उच्च-स्तरीय, एकीकृत API प्रदान करता है। यह Puppeteer और Playwright दोनों को सपोर्ट करता है, और मानव जैसे स्वचालन के लिए उन्नत विधियों जैसे realClick, realFill, और liveURL के साथ मानक पृष्ठ ऑब्जेक्ट का विस्तार करता है।

import { Puppeteer, createPuppeteerCDPSession } from '@scrapeless-ai/sdk';
 
const browser = await Puppeteer.connect({
  sessionName: 'my-session',
  sessionTTL: 180,
  proxyCountry: 'US'
});
const page = await browser.newPage();
 
await page.goto('https://example.com');
const cdpSession = await createPuppeteerCDPSession(page);
 
await cdpSession.realClick('#login-btn');
await cdpSession.realFill('#username', 'myuser');
const urlInfo = await cdpSession.liveURL();
console.log('Current page URL:', urlInfo.liveURL);
 
await browser.close();

मुख्य विशेषताएँ:

  • Puppeteer और Playwright के लिए एकीकृत API
  • मानव जैसे स्वचालन: realClick, realFill, liveURL
  • Scrapeless ब्राउज़र सत्रों के साथ आसान एकीकरण

2. ब्राउज़र API

उन्नत स्वचालन परिदृश्यों के लिए सीधे ब्राउज़र सत्रों का प्रबंधन करें।

// Create a browser session
const session = await client.browser.create({
  sessionName: 'api-session',
  sessionTTL: 120,
  proxyCountry: 'US'
});
console.log('Browser session info:', session);

3. स्क्रैपिंग API

वेब पेजों को स्क्रैप करें और विभिन्न स्वरूपों में सामग्री निकालें।

const result = await client.scraping.scrape({
  actor: 'scraper.shopee',
  input: {
    url: 'https://shopee.tw/product/58418206/7180456348'
  }
});
 
console.log('result: ', result);

4. डीप SerpApi

खोज इंजन परिणाम (जैसे, Google) निकालें।

const searchResults = await client.deepserp.scrape({
  actor: 'scraper.google.search',
  input: {
    q: 'nike site:www.nike.com'
  }
});
console.log('Search results:', searchResults);

5. यूनिवर्सल API

लचीले डेटा निष्कर्षण के लिए सामान्य-उद्देश्य स्क्रैपिंग।

const universalResult = await client.universal.scrape({
  url: 'https://example.com',
  options: {
    javascript: true,
    screenshot: true,
    extractMetadata: true
  }
});
console.log('Universal scraping result:', universalResult);

6. प्रॉक्सी API

अपने स्क्रैपिंग और स्वचालन कार्यों के लिए प्रॉक्सी का प्रबंधन और कॉन्फ़िगर करें।

// Get proxy URL
const proxyURL = await client.proxies.proxy({
  sessionName: 'sessionName',
  sessionTTL: 180,
  proxyCountry: 'US',
  sessionRecording: true,
  defaultViewport: null
});
console.log('Proxy URL:', proxyURL);

7. ब्राउज़र प्रोफाइल

प्रोफ़ाइल आपको कई सत्रों में उपयोगकर्ता डेटा - जैसे संग्रहण, कुकीज़, कैश और लॉगिन अवस्थाएँ - को बनाए रखने की अनुमति देती हैं। यह सुचारू स्वचालन, सरलीकृत प्रमाणीकरण और अनुकूलित प्रदर्शन को सक्षम करता है।

// Create a new profile
const createResponse = await client.profiles.create('My Profile');
console.log('Profile created:', createResponse);
 
// List profiles
const profiles = await client.profiles.list({ page: 1, pageSize: 10 });
console.log('Profiles:', profiles.docs);
 
// Get a specific profile
const profile = await client.profiles.get(createResponse.profileId);
console.log('Profile details:', profile);
 
// Delete the profile
const deleteResponse = await client.profiles.delete(createResponse.profileId);
console.log('Profile deleted:', deleteResponse);

त्रुटि प्रबंधन

SDK व्यापक त्रुटि प्रबंधन प्रदान करता है:

try {
  const result = await client.scraping.scrape({
    actor: 'scraper.shopee',
    input: {
      url: 'https://shopee.tw/product/58418206/7180456348'
    }
  });
} catch (error) {
  if (error instanceof ScrapelessError) {
    console.error('Scrapeless error:', error.message);
    console.error('Status code:', error.statusCode);
  } else {
    console.error('Unexpected error:', error);
  }
}

विन्यास

SDK विभिन्न कॉन्फ़िगरेशन विकल्पों का समर्थन करता है:

const client = new Scrapeless({
  apiKey: 'YOUR_API_KEY',
  timeout: 30000, // request timeout in milliseconds
  baseApiUrl: 'https://api.scrapeless.com',
  browserApiUrl: 'https://browser.scrapeless.com'
});

पर्यावरण चर

  • SCRAPELESS_API_KEY - आपकी API कुंजी
  • SCRAPELESS_BASE_API_URL - बेस API URL
  • SCRAPELESS_BROWSER_API_URL - ब्राउज़र API URL

सर्वोत्तम अभ्यास

  1. API कुंजी सुरक्षा: अपनी API कुंजी को कभी भी हार्डकोड न करें। पर्यावरण चरों का उपयोग करें।
  2. त्रुटि प्रबंधन: हमेशा try-catch ब्लॉक में API कॉल को लपेटें।
  3. संसाधन सफाई: काम पूरा होने पर हमेशा ब्राउज़र कनेक्शन बंद करें।
  4. दर सीमा: API दर सीमाओं का ध्यान रखें।
  5. टाइमआउट कॉन्फ़िगरेशन: लंबे समय तक चलने वाले संचालन के लिए उपयुक्त टाइमआउट सेट करें।

सहायता

सहायता, दस्तावेज़ीकरण और अधिक उदाहरणों के लिए, जाएँ: