GBProxies

Cách Sử Dụng Proxy Xác Thực với Puppeteer

Chrome nhận host và port proxy làm cờ khởi chạy, và Puppeteer trả lời lời nhắc đăng nhập bằng page.authenticate.

Các bước

  1. Khởi chạy Chrome với --proxy-server=host:port
  2. Gọi page.authenticate với tên người dùng và mật khẩu proxy của bạn
  3. Bật chặn yêu cầu để chặn hình ảnh và phông chữ
  4. Mở một trình duyệt cho mỗi session id để giữ IP cố định

Mã ví dụ

import puppeteer from "puppeteer";

const browser = await puppeteer.launch({ args: ["--proxy-server=gw.gbproxies.cc:10000"] });
const page = await browser.newPage();
await page.authenticate({ username: "USERNAME-cc-fr-sid-shop1-ttl-30", password: "PASSWORD" });
await page.setRequestInterception(true);
page.on("request", (r) => (["image", "font", "media"].includes(r.resourceType()) ? r.abort() : r.continue()));
await page.goto("https://api.ipify.org");
console.log(await page.content());
await browser.close();

Thay thế USERNAME và PASSWORD bằng thông tin đăng nhập proxy từ trang Proxies của bảng điều khiển. Cổng 10000 là HTTP residential; xem các cổng của mỗi sản phẩm bên dưới.

Mẹo

  • Chặn hình ảnh thường giảm lưu lượng mỗi trang hơn một nửa
  • Một session id cố định giữ nguyên IP cho toàn bộ quy trình duyệt

Câu hỏi thường gặp

Tại sao Chrome vẫn hiển thị popup đăng nhập?

page.authenticate phải chạy trước lần điều hướng đầu tiên của trang đó.

Cách Sử Dụng Proxy Xác Thực với Puppeteer