Skip to content

tuannmdev/browser-automation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Browser Automation with Puppeteer

Project Node.js đơn giản để tự động mở browser, load URL và chờ 1 phút, lặp lại mỗi 30 phút.

🚀 Cài đặt

1. Tạo thư mục project

mkdir browser-automation
cd browser-automation

2. Tạo các file

  • Tạo file package.json với nội dung từ artifact trên
  • Tạo file index.js với nội dung từ artifact trên

3. Cài đặt dependencies

npm install

Nếu bạn đã có sẵn Chrome trong máy và muốn bỏ qua bước tải Chromium khi cài Puppeteer:

Trên Windows:

set PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true && npm install

Trên Linux/macOS:

PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true npm install

⚙️ Cấu hình

Mở file index.js và thay đổi các thông số:

const TARGET_URL = 'https://your-website.com'; // URL muốn mở
const WAIT_TIME = 60 * 1000; // Thời gian chờ (ms)
const REPEAT_INTERVAL = 30 * 60 * 1000; // Chu kỳ lặp lại (ms)

🏃‍♂️ Chạy chương trình

Chạy bình thường:

npm start

Chạy với auto-restart (development):

npm run dev

📋 Tính năng

  • ✅ Mở browser tự động
  • ✅ Load URL được chỉ định
  • ✅ Chờ 1 phút trước khi đóng
  • ✅ Lặp lại mỗi 30 phút
  • ✅ Hiển thị log chi tiết
  • ✅ Xử lý lỗi gracefully
  • ✅ Đóng browser khi nhấn Ctrl+C

🔧 Tùy chỉnh

Chạy ẩn browser (headless):

headless: true, // Thay vì false

Thay đổi kích thước cửa sổ:

args: [
    '--window-size=1366,768', // Thay vì --start-maximized
    '--disable-blink-features=AutomationControlled',
    '--no-sandbox'
]

Timeout khác nhau:

await page.goto(TARGET_URL, {
    waitUntil: 'load', // 'load', 'domcontentloaded', 'networkidle0', 'networkidle2'
    timeout: 60000 // 60 giây
});

⏹️ Dừng chương trình

Nhấn Ctrl + C để dừng chương trình an toàn.

🐛 Troubleshooting

Lỗi Chrome không tìm thấy:

  • Puppeteer sẽ tự động download Chromium khi cài đặt
  • Nếu vẫn lỗi, thử: npm install puppeteer --force

Lỗi permission trên Windows:

  • Chạy Command Prompt với quyền Administrator
  • Hoặc thêm --no-sandbox vào args (đã có sẵn)

Browser không mở:

  • Kiểm tra antivirus có block không
  • Thử set headless: true để test

About

Browser Automation with Puppeteer use Node.js

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published