Cara Menggunakan Proxy Berautentikasi dengan Puppeteer
Chrome mengambil hos dan port proxy sebagai tanda pelancaran, dan Puppeteer menjawab prompt log masuk dengan page.authenticate.
Langkah-langkah
- Lancarkan Chrome dengan --proxy-server=host:port
- Panggil page.authenticate dengan nama pengguna dan kata laluan proxy anda
- Hidupkan penyekatan permintaan untuk menyekat imej dan fon
- Buka satu penyemak imbas per id sesi untuk IP yang melekat
Contoh kod
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();Gantikan USERNAME dan PASSWORD dengan log masuk proxy dari halaman Proxies di konsol. Port 10000 adalah residential HTTP; lihat port setiap produk di bawah.
Petua
- Menyekat imej sering mengurangkan trafik setiap halaman lebih daripada separuh
- Id sesi yang melekat mengekalkan IP yang sama untuk keseluruhan aliran penyemakan imbas
Soalan biasa
Mengapa Chrome masih menunjukkan popup log masuk?
page.authenticate mesti dijalankan sebelum navigasi pertama halaman tersebut.