Cách thiết lập proxy di động cho Puppeteer
Puppeteer là một framework tự động hóa web, được thiết kế đặc biệt cho các trình duyệt dựa trên Chromium, hoạt động chủ yếu như một thư viện JavaScript/Node.js. Nó hoạt động tốt nhất cho việc tự động hóa chính xác ở mức thấp và đóng vai trò quan trọng trong quản lý đa tài khoản và tối ưu hóa hoạt động kinh doanh web, nơi nhiều hành động phải được thực hiện thường xuyên và nhanh chóng.
Puppeteer xuất sắc trong việc kiểm soát trình duyệt chi tiết, khiến việc tích hợp proxy với Puppeteer trở thành nền tảng cho tự động hóa đáng tin cậy ở quy mô lớn.
Lựa chọn proxy cho Puppeteer: Proxy di động CyberYozh
Vì Puppeteer hoạt động tốt nhất cho tự động hóa web, proxy di động là lựa chọn tối ưu cho Puppeteer. Chúng mang điểm tin cậy cao nhất trong tất cả các loại proxy, do đó các nền tảng sẽ không hạn chế phiên làm việc của bạn trong các hoạt động tự động hóa.

Đối với quản lý mạng xã hội, quy trình làm việc đa tài khoản, và bất kỳ nền tảng nào áp dụng phân tích hành vi nghiêm ngặt, proxy di động tái tạo lưu lượng truy cập cấp nhà mạng chính hãng mà hệ thống nhận diện là người dùng thực.
Kết hợp proxy di động với điện thoại đám mây hoặc trình duyệt antidetect để đạt được sự cô lập dấu vân tay hoàn toàn, trong đó mỗi phiên nhận được chữ ký thiết bị, danh tính mạng và địa chỉ IP duy nhất, loại bỏ sự liên kết giữa các tài khoản.
Các lựa chọn khác: Proxy dân cư và datacenter
Mặc dù proxy di động cung cấp giải pháp tốt nhất cho hầu hết các quy trình làm việc với Puppeteer với rủi ro hạn chế tối thiểu, các loại proxy khác phục vụ các trường hợp sử dụng riêng của chúng như một máy chủ proxy Puppeteer:
Proxy dân cư luân phiên cung cấp lựa chọn tiêu chuẩn cho hầu hết các tác vụ thu thập dữ liệu, với nhóm IP lớn trên hơn 100 quốc gia. Trong Puppeteer, sử dụng chúng cho các tác vụ scraping hàng loạt yêu cầu luân phiên IP theo từng yêu cầu. Cấu hình hậu tố -res-any trong tên người dùng của bạn để nhà cung cấp tự động xử lý việc luân phiên proxy Puppeteer.
Proxy dân cư tĩnh gán một IP cố định duy nhất cho mỗi phiên, khiến chúng đáng tin cậy cho các quy trình làm việc liên kết tài khoản với mức độ tự động hóa Puppeteer vừa phải. Sử dụng chúng khi nền tảng yêu cầu tính liên tục của phiên, chẳng hạn như bảng điều khiển đã đăng nhập hoặc quy trình thanh toán.
Proxy datacenter rất nhanh, nhưng các nền tảng có xu hướng gắn cờ các mẫu lưu lượng truy cập không phải dân cư của chúng. Trong Puppeteer, chỉ sử dụng chúng cho kiểm thử API, đánh giá hiệu suất và QA tự động trên môi trường staging nơi phát hiện bot là tối thiểu.
So sánh proxy dân cư và proxy di động trong một bài viết chuyên biệt của CyberYozh. Chọn loại nào phù hợp nhất với bạn.
Chuẩn bị làm việc với proxy Puppeteer
Puppeteer khởi chạy một thực thể trình duyệt headless với mức sử dụng lưu lượng mạng tối thiểu, sau đó tự động hóa các quy trình như mở và đóng trang, nhấp chuột, nhập bàn phím và các tác vụ khác được thực hiện trong các hoạt động web thông thường.
Trình duyệt headless là một phiên bản Chromium xử lý các trang web và thực thi JavaScript mà không hiển thị giao diện đồ họa, giảm đáng kể tải tài nguyên. Theo mặc định, Puppeteer sử dụng chế độ headless (headless: true). Truyền headless: false để khởi chạy phiên trình duyệt hiển thị nhằm gỡ lỗi. Đọc thêm trong tài liệu API Puppeteer.
Tạo tài khoản CyberYozh
Đăng ký CyberYozh, điều hướng đến My Proxies, và mua loại proxy phù hợp với tác vụ của bạn: mobile proxy cho quy trình tự động hóa và mạng xã hội, hoặc rotating residential cho scraping.

Mở thẻ proxy của bạn, nhấp Generate Credentials, chọn chế độ xoay vòng của bạn (Random IP, Short Session, hoặc Long Session), và lưu host, port, username và password.
Thiết lập Puppeteer trên PC của bạn
Puppeteer yêu cầu Node.js (v18+) và trình quản lý gói (ví dụ: npm hoặc yarn). Khởi tạo dự án của bạn và cài đặt thư viện:
# Initialize Node.js project
npm init -y
# Install Puppeteer (includes bundled Chromium)
npm install puppeteer# Alternatively, with Yarn:
yarn add puppeteerSử dụng Puppeteer trong mã JavaScript của bạn
Có hai biến thể gói cho quy trình làm việc với Puppeteer proxy:
puppeteer — gói đầy đủ tự động tải xuống và đóng gói tệp nhị phân Chromium tương thích. Sử dụng gói này cho hầu hết các script tự động hóa độc lập.
puppeteer-core — phiên bản nhẹ không có trình duyệt đi kèm. Sử dụng khi bạn tự kiểm soát đường dẫn tệp nhị phân trình duyệt (ví dụ: cài đặt Chrome cụ thể hoặc môi trường đám mây). Yêu cầu bạn chỉ định executablePath một cách rõ ràng.
// puppeteer (full, with bundled Chromium):
const puppeteer = require('puppeteer');
// puppeteer-core (no bundled browser):
const puppeteer = require('puppeteer-core');
// Must also pass: executablePath: '/path/to/chrome' Khởi chạy quy trình tự động hóa với CyberYozh
Bây giờ, bạn có thể tiến hành dự án Puppeteer của mình. Bắt đầu với cấu trúc dự án, thêm thông tin xác thực proxy Puppeteer vào môi trường, sau đó import Puppeteer vào các script Node.js của bạn.
Sử dụng --proxy-server flag làm đối số khởi chạy Chromium, định tuyến toàn bộ lưu lượng mạng cấp trình duyệt qua địa chỉ và cổng proxy được chỉ định. Nó được truyền bên trong mảng args của puppeteer.launch().
Tạo cấu trúc dự án của bạn
Tổ chức thư mục dự án của bạn, tách biệt thông tin xác thực, script, cấu hình và đầu ra ngay từ đầu:
.env file cho thông tin xác thực proxy (thêm vào .gitignore)
.gitignore để chỉ định những gì sẽ không được chia sẻ qua Git, tức là thông tin xác thực proxy
index.js cho script Puppeteer chính
config/browser.js cho các tùy chọn khởi chạy trình duyệt, trong một thư mục riêng biệt
output/ thư mục cho dữ liệu đã thu thập (JSON/CSV)
Gán proxy trong file .env
Thêm thông tin xác thực CyberYozh của bạn dưới dạng biến môi trường. Không bao giờ hard-code chúng trong các file nguồn để tránh rò rỉ thông tin xác thực vào hệ thống quản lý phiên bản.
PROXY_HOST=your_proxy_ip
PROXY_PORT=your_proxy_port
PROXY_USER=your_username
PROXY_PASS=your_passwordImport và cấu hình Puppeteer
Cài đặt dotenv để tải các biến .env:
npm install dotenvSau đó cấu hình các tùy chọn máy chủ proxy Puppeteer của bạn:
// index.js
require('dotenv').config();
const puppeteer = require('puppeteer'); // or puppeteer-core
const PROXY = `${process.env.PROXY_HOST}:${process.env.PROXY_PORT}`; Tạo phiên duyệt web Puppeteer
Định nghĩa thực thể trình duyệt với tham số máy chủ Puppeteer HTTP proxy , sau đó xác thực trang. Theo mặc định, phiên làm việc ở chế độ headless:
(async () => {
const browser = await puppeteer.launch({
headless: true, // false for debugging
args: [`--proxy-server=http://${PROXY}`]
});
const page = await browser.newPage();
// Authenticate with CyberYozh credentials
await page.authenticate({
username: process.env.PROXY_USER,
password: process.env.PROXY_PASS
});
// Access the target site and show its content
await page.goto('https://httpbin.org/ip');
const content = await page.content();
console.log(content);
// Perform the automation or scraping operations using JS commands as needed
// Close the session
await browser.close();
})(); Như đã lưu ý trong một chủ đề Stack Overflow được bình chọn cao về việc sử dụng proxy Puppeteer, cờ --proxy-server phải được truyền khi khởi chạy trình duyệt: nó không thể thay đổi theo từng trang sau khi khởi chạy.
Triển khai code của bạn và giám sát quá trình
Chạy script tự động hóa của bạn từ thư mục gốc dự án và xác minh rằng việc xoay vòng IP đang hoạt động:
node index.jsĐể xoay vòng proxy Puppeteer qua nhiều phiên, duy trì một pool proxy và gán lại proxy bằng cách khởi chạy lại các instance trình duyệt.
Sử dụng CyberYozh API key với IP Checker để tự động hóa việc xoay vòng và kiểm tra chất lượng của mỗi IP đến trước khi sử dụng, giảm thiểu rủi ro bị hạn chế trong các hoạt động đa tài khoản hàng loạt.
📚 Đọc thêm về CyberYozh
Tóm tắt: Sử dụng Puppeteer proxy hiệu quả
Tích hợp proxy Puppeteer với mobile proxy của CyberYozh cung cấp nền tảng đáng tin cậy nhất cho tự động hóa web. Nó kết hợp khả năng điều khiển trình duyệt Node.js với IP di động độ tin cậy cao và luân chuyển dựa trên API để duy trì quy trình tự động hóa đa tài khoản và kinh doanh ở quy mô lớn mà không kích hoạt các hạn chế của nền tảng.
Câu hỏi thường gặp về proxy Puppeteer
Proxy Puppeteer là gì và tại sao tôi cần nó?
Proxy Puppeteer định tuyến lưu lượng truy cập của trình duyệt headless thông qua một địa chỉ IP bên ngoài, che giấu nguồn gốc của bạn. Nó ngăn chặn cấm IP, cho phép nhắm mục tiêu địa lý và làm cho các phiên tự động xuất hiện như hoạt động người dùng thực.
Làm thế nào để sử dụng proxy trong Puppeteer?
Truyền cờ --proxy-server=host:port bên trong mảng args của puppeteer.launch(), sau đó gọi page.authenticate({ username, password }) cho các máy chủ proxy riêng tư. Không cần thư viện bổ sung cho các thiết lập cơ bản.
Sự khác biệt giữa puppeteer và puppeteer-core là gì?
puppeteer đi kèm với tệp nhị phân Chromium tương thích và sẵn sàng sử dụng sau khi npm install. puppeteer-core là phiên bản nhẹ không bao gồm trình duyệt; bạn phải cung cấp executablePath đến cài đặt Chrome hoặc Chromium hiện có.
Puppeteer có hỗ trợ proxy SOCKS5 không?
Có. Truyền --proxy-server=socks5://host:port trong mảng args. Proxy SOCKS5 hỗ trợ đường hầm đầy đủ ở cấp độ TCP, bao gồm lưu lượng không phải HTTP mà proxy HTTP không thể chuyển tiếp.
Luân chuyển proxy Puppeteer hoạt động như thế nào?
Với proxy luân chuyển của CyberYozh, việc luân chuyển được tích hợp sẵn vào cơ sở hạ tầng proxy: mỗi kết nối hoặc phiên mới sử dụng một IP mới. Để luân chuyển theo từng trình duyệt trong Puppeteer, khởi chạy lại một phiên bản trình duyệt mới với puppeteer.launch() cho mỗi proxy trong nhóm của bạn.
Tôi có thể đặt proxy khác nhau cho mỗi trang trong Puppeteer không?
Không thể tự nhiên ở cấp độ trang: cờ --proxy-server áp dụng toàn cục cho tiến trình trình duyệt. Để sử dụng proxy theo từng phiên, khởi chạy một phiên bản trình duyệt riêng biệt cho mỗi proxy, hoặc sử dụng module npm puppeteer-page-proxy để chặn theo từng trang.
Tôi nên sử dụng loại proxy CyberYozh nào cho tự động hóa mạng xã hội trong Puppeteer?
Mobile proxy là lựa chọn đúng đắn: chúng tái tạo lưu lượng cấp nhà mạng thực và mang điểm tin cậy cao nhất trên các nền tảng như Instagram, TikTok và X. Kết hợp với trình duyệt antidetect để cách ly dấu vân tay hoàn toàn.
Làm thế nào để ngăn chặn rò rỉ IP trong Puppeteer?
Vô hiệu hóa WebRTC để ngăn nó phát tán IP thực của bạn: truyền --disable-webrtc hoặc ghi đè RTCPeerConnection qua page.evaluateOnNewDocument(). Đồng thời đảm bảo các truy vấn DNS được định tuyến qua proxy, không phân giải cục bộ.
Làm thế nào để xác minh proxy đang hoạt động trong Puppeteer?
Điều hướng đến https://httpbin.org/ip hoặc https://app.cyberyozh.com/checkers/ip-address/ trong phiên Puppeteer của bạn. Địa chỉ IP trả về phải khớp với địa chỉ proxy của bạn. Nếu vẫn hiển thị IP gốc của bạn, hãy kiểm tra xem page.authenticate() đã được gọi trước page.goto()chưa.
Tôi nên làm gì nếu tự động hóa Puppeteer của tôi vẫn bị chặn?
Kiểm tra xem các IP của bạn có điểm gian lận thấp bằng cách sử dụng CyberYozh IP Checker, giảm tốc độ khoảng thời gian giữa các yêu cầu và ngẫu nhiên hóa chuỗi user-agent cũng như kích thước viewport. Đối với các nền tảng bảo mật cao, hãy kết hợp proxy di động CyberYozh với trình duyệt antidetect.
Puppeteer có hoạt động với proxy HTTP và HTTPS không?
Có. Cờ --proxy-server hỗ trợ cả hai giao thức http:// và https:// , và Puppeteer sẽ tự động chuyển lưu lượng HTTPS qua đường hầm CONNECT thông qua proxy.
