SDKNode.js SDK

Node SDK

Cài đặt

Để cài đặt Scrapeless Node SDK, bạn có thể sử dụng npm:

npm install @scrapeless-ai/sdk

Bắt đầu nhanh

  1. Đăng nhập vào bảng điều khiển Scrapeless và lấy API Key get-api-key.png
  2. Đặt API key làm biến môi trường có tên SCRAPELESS_API_KEY hoặc truyền nó làm tham số cho lớp Scrapeless.

Đây là một ví dụ cơ bản:

import { Scrapeless } from '@scrapeless-ai/sdk';
 
const client = new Scrapeless({
  apiKey: 'YOUR_API_KEY' // hoặc sử dụng biến môi trường SCRAPELESS_API_KEY
});

Các dịch vụ khả dụng

1. Trình duyệt Scraping (Wrapper tự động hóa trình duyệt)

Module Trình duyệt Scraping cung cấp một API thống nhất, cấp cao để tự động hóa trình duyệt, được xây dựng trên API Trình duyệt Scrapeless. Nó hỗ trợ cả Puppeteer và Playwright, và mở rộng đối tượng trang tiêu chuẩn với các phương thức nâng cao như realClick, realFillliveURL để tự động hóa giống người hơn.

import { Puppeteer, createPuppeteerCDPSession } from '@scrapeless-ai/sdk';
 
const browser = await Puppeteer.connect({
  session_name: 'my-session',
  session_ttl: 180,
  proxy_country: '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();

Các tính năng chính:

  • API thống nhất cho Puppeteer và Playwright
  • Tự động hóa giống người: realClick, realFill, liveURL
  • Dễ dàng tích hợp với các phiên trình duyệt Scrapeless

2. API Trình duyệt

Quản lý trực tiếp các phiên trình duyệt cho các kịch bản tự động hóa nâng cao.

// Tạo một phiên trình duyệt
const session = await client.browser.create({
  session_name: 'api-session',
  session_ttl: 120,
  proxy_country: 'US'
});
console.log('Browser session info:', session);

3. API Scraping

Trích xuất nội dung trang web và trích xuất nội dung ở nhiều định dạng khác nhau.

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

4. Deep SerpApi

Trích xuất kết quả tìm kiếm công cụ tìm kiếm (ví dụ: 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 Universal

Trích xuất dữ liệu đa năng cho việc trích xuất dữ liệu linh hoạt.

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 Proxy

Quản lý và cấu hình proxy cho các tác vụ scraping và tự động hóa của bạn.

// Lấy URL proxy
const proxy_url = await client.proxies.proxy({
  session_name: 'session_name',
  session_ttl: 180,
  proxy_country: 'US',
  session_recording: true,
  defaultViewport: null
});
console.log('Proxy URL:', proxy_url);

Xử lý lỗi

SDK cung cấp khả năng xử lý lỗi toàn diện:

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);
  }
}

Cấu hình

SDK hỗ trợ nhiều tùy chọn cấu hình:

const client = new Scrapeless({
  apiKey: 'YOUR_API_KEY',
  timeout: 30000, // thời gian chờ yêu cầu tính bằng mili giây
  baseApiUrl: 'https://api.scrapeless.com',
  browserApiUrl: 'https://browser.scrapeless.com'
});

Biến môi trường

  • SCRAPELESS_API_KEY - API key của bạn
  • SCRAPELESS_BASE_API_URL - URL API cơ sở
  • SCRAPELESS_BROWSER_API_URL - URL API trình duyệt

Thực tiễn tốt nhất

  1. Bảo mật API Key: Không bao giờ mã hóa cứng API key của bạn. Sử dụng biến môi trường.
  2. Xử lý lỗi: Luôn đặt các lệnh gọi API trong khối try-catch.
  3. Dọn dẹp tài nguyên: Luôn đóng kết nối trình duyệt khi hoàn tất.
  4. Giới hạn tốc độ: Lưu ý về giới hạn tốc độ API.
  5. Cấu hình thời gian chờ: Đặt thời gian chờ phù hợp cho các hoạt động kéo dài.

Hỗ trợ

Để được hỗ trợ, tài liệu và nhiều ví dụ hơn, hãy truy cập: