APITự động hóa cơ bản Dolphin {anty}

Tự động hóa cơ bản Dolphin {anty}

Thông tin chung 📜

Các hồ sơ trình duyệt dựa trên nhân "Anty" hỗ trợ khởi chạy với DevTools Protocol được bật. Điều này cho phép bạn kết nối tới hồ sơ qua cổng được tạo lúc khởi động và tự động hóa trình duyệt bằng các công cụ như Puppeteer, Playwright, Selenium và các công cụ khác.

Tự động hóa cơ bản gồm ba bước:

  1. Khởi chạy hồ sơ qua API với DevTools Protocol được bật.
  2. Kết nối tới cổng của hồ sơ bằng một công cụ tự động hóa (Puppeteer, Playwright, Selenium, Postman, v.v.).
  3. Chạy script tự động hóa của riêng bạn qua kết nối đang mở.

ℹ️ Để dùng tự động hóa của Dolphin{anty}, ứng dụng phải đang chạy và đã đăng nhập. Việc đăng nhập có thể thực hiện bằng tên đăng nhập/mật khẩu hoặc bằng code qua token. Bạn có thể tạo token trong trang cá nhân của mình.

Các tham số yêu cầu để đăng nhập bằng token:

Để tránh lỗi 401, bạn phải gửi yêu cầu: Phương thức: POST URL: http://localhost:3001/v1.0/auth/login-with-token Header: Content-Type: application/json Body:

{ "token": "API_TOKEN"}

Thay API_TOKEN bằng token thực tế của bạn từ tài khoản Dolphin{anty} trên trang của chúng tôi.

ChromeDriver ⬇️

ChromeDriver là cầu nối giữa script của bạn (ví dụ Selenium) và trình duyệt Dolphin{anty}. Driver tiêu chuẩn có thể làm lộ việc tự động hóa, vì vậy chúng tôi cung cấp ChromeDriver đã được sửa đổi riêng cho từng phiên bản trình duyệt.

Tải ChromeDriver

Ví dụ về yêu cầu đăng nhập ⚙️

✅ Nếu thành công, phản hồi sẽ là:

{"success": true}

Bước 1 — Khởi chạy hồ sơ qua API ▶️

Để khởi chạy một hồ sơ trình duyệt qua API, hãy gửi yêu cầu GET:

​http://localhost:3001/v1.0/browser_profiles/PROFILE_ID/start?automation=1

Cho chế độ headless:

​http://localhost:3001/v1.0/browser_profiles/PROFILE_ID/start?automation=1&headless=1​
  1. PROFILE_ID - ID của hồ sơ (bạn có thể lấy nó qua API hoặc trong ứng dụng Dolphin{anty} khi chỉnh sửa hồ sơ).
  2. automation=1 - bắt buộc cho tự động hóa.

Ví dụ khởi chạy qua Postman bằng cách gửi yêu cầu:

⚠️ Lưu ý quan trọng:

  1. API cục bộ chỉ hoạt động khi Dolphin{anty} đang chạy.
  2. Các yêu cầu phải được gửi từ chính máy mà trình duyệt đang chạy.
  3. Mặc định, API cục bộ dùng cổng 3001; nếu cổng bận, một cổng khác sẽ được gán (kiểm tra ở cửa sổ Health trong Dolphin{anty}).
  4. Trên gói Free, việc nhập/xuất cookie qua API không khả dụng vì không có đồng bộ đám mây.
  5. Giới hạn yêu cầu (rate limit): 1500 yêu cầu mỗi phút.

Phản hồi của API ✅

Nếu hồ sơ được khởi chạy thành công, phản hồi sẽ trông đại khái như sau (giá trị của các trường port và wsEndpoint có thể khác):

{
 "success": true,
  "automation": {
    "port": 50568,
    "wsEndpoint": "/devtools/browser/c71c1a9d-f07c-4dd9-84a9-53a4c6df9969" }}​

Bước 2 — Kết nối tới hồ sơ 🔌

Puppeteer

Puppeteer — Thư viện phổ biến của Google để tự động hóa và kiểm thử giao diện trình duyệt. Ban đầu được tạo để khởi chạy Chrome và kiểm tra giao diện, nhưng hỗ trợ gần như mọi thao tác với trình duyệt. Yêu cầu kiến thức JavaScript/Node.js.

Playwright

Playwright vs Selenium: What are the Main Differences and Which is Better?  - Applitools
Playwright vs Selenium: What are the Main Differences and Which is Better? - Applitools

Playwright - Một lựa chọn thay thế mới hơn, hiện đại hơn cho Puppeteer, do Microsoft phát triển, với API và chức năng tương tự.

Selenium

Cách kết nối Selenium tới một trình duyệt đang chạy được mô tả trong bài viết này. Cần lưu ý rằng Selenium dùng ChromeDriver tiêu chuẩn, nhưng các trang web có thể phát hiện việc tự động hóa. Vì vậy chúng tôi khuyên dùng ChromeDriver của chúng tôi — tải nó về và chỉ định đường dẫn tới nó trong code để ẩn việc sử dụng Selenium.

Bước 3 — Dừng hồ sơ ⛔️

Để dừng một hồ sơ trình duyệt qua API, hãy gửi yêu cầu GET:

 http://localhost:3001/v1.0/browser_profiles/PROFILE_ID/stop