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
- Đăng nhập vào bảng điều khiển Scrapeless và lấy API Key
- Thiết lập API key làm biến môi trường tên
SCRAPELESS_API_KEY
hoặc truyền nó như một tham số cho lớpScrapeless
.
Đâ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)
Mô-đun Trình duyệt Scraping cung cấp một API cấp cao, thống nhất cho 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
, realFill
và liveURL
để tự động hóa giống con người hơn.
import { Puppeteer } 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');
await page.realClick('#login-btn');
await page.realFill('#username', 'myuser');
const urlInfo = await page.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 con người:
realClick
,realFill
,liveURL
- Tích hợp dễ dàng với 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
Truy xuất các 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ủa 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. Universal API
Truy 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. Proxy API
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 khác nhau:
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ạnSCRAPELESS_BASE_API_URL
- URL API cơ sởSCRAPELESS_BROWSER_API_URL
- URL API trình duyệt
Các thực tiễn tốt nhất
- 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.
- Xử lý lỗi: Luôn bọc các cuộc gọi API trong khối try-catch.
- Dọn dẹp tài nguyên: Luôn đóng kết nối trình duyệt khi hoàn tất.
- Giới hạn tốc độ: Lưu ý về giới hạn tốc độ API.
- 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à thêm ví dụ, hãy truy cập:
- Tài liệu: https://docs.scrapeless.com
- GitHub: https://github.com/scrapeless-ai/scrapeless-sdk-node
- Hỗ trợ: support@scrapeless.com