Запуск з проксі та автентиатом#
import puppeteer from "puppeteer";
const browser = await puppeteer.launch({
headless: true,
args: ["--proxy-server=http://res.proxy-cyber.com:9000", "--no-first-run"],
});
const page = await browser.newPage();
await page.authenticate({ username: "USER-cc-us-sid-run1-ttl-30m", password: "PASS" });
await page.goto("https://api.ipify.org", { waitUntil: "domcontentloaded", timeout: 45000 });
console.log(await page.evaluate(() => document.body.innerText));
await browser.close();Використовуйте окремий ідентифікатор сеансу для кожного незалежного робочого процесу, де передбачено його шлюзу. Підтвердіть дозволені параметри тривалості та розташування у деталях з'єднання. Житловий пристрій може від'єднатися до передбачуваної тривалості; липка секція не гарантує того ж IP протягом доби. Для фіксованої адреси порівняти виділений статичний продукт.
Один проксі-сервер для веб-переглядача#
Початковий рівень --proxy-сервера застосовується до маршрутизації за замовчуванням браузера. Поточний лялька також підтримує проксіСервер в браузері.createBrowserContext(), з обліковими записами, що поставляються через сторінку.authenticate(). Використовуйте окремі контексти для різних параметрів проксі та окремих каталогів даних користувачів для стійких профілів; перевірте вихід всередині кожного контексту.
Блок зображень, шрифти та медіа#
await page.setRequestInterception(true);
page.on("request", (req) => {
const t = req.resourceType();
if (["image", "media", "font", "stylesheet"].includes(t)) return req.abort();
req.continue();
});Консистенція#
- Набори
Accept-Languageі часовий пояс країни виходу:page.setExtraHTTPHeaders({\"Accept-Language\": \"de-DE,de;q=0.9\"})іpage.emulateTimezone(\"Europe/Berlin\"). - Вимкнено витоки WebRTC з
--force-webrtc-ip-handling-policy=disable_non_proxied_udpв запускних огранах. - Зберігати один обліковий запис на обліковий запис; повторно використовувати каталог даних користувачів, якщо обліковий запис повинен виглядати як пристрій повернення.
Ви будете задоволені#
| Симптом | Панчохи | КРЕДИТ |
|---|---|---|
| Электронная пошта: ERR TUNNEL CONNECTION FAILED | Шлюз відмовив у введенні: облікові дані, параметр або вихідний | Репродукція з КУРЛ -v для читання коду шлюзу |
| сітка:ERR PROXY AUTH UNSUPPORTED / підказки | автентифікат() називається після навігації | Сторінка виклику.authenticate перед готелем |
| Якість IP-адреси в будь-якому браузері | Сейм-сесія id reused | Використовуйте відмінну -повідність за браузером або омитайте його |
| Дуже повільне перше навантаження | Виїзд на дому плюс важка сторінка | Блокові ресурси; підвищення часу до 45 с |
Питання, які говорять#
Чи можна використовувати цуценя SOCKS5 з паролем?
Chrome не підтримує автентифікацію SOCKS5. Використовуйте HTTP проксі на порту 9000 з сторінкою.authenticate, або білий список вашого сервера IP і пройти --proxy-server=socks5://res.proxy-cyber.com:9001.