Один браузер Puppeteer може тримати окремі проксі-контексти
Використовуйте BrowserContextOptions.proxyServer у Puppeteer25.16.0, коли групам сторінок потрібні різні проксі-маршрути в одному браузері Chromium.
Puppeteer 25.16.0 надає параметр proxyServer під час створення контексту браузера. У наявному браузері Chromium сторінки нового контексту можуть використовувати вибраного посередника, зокрема публічного HTTP-кандидата зі списку HTTP-проксі:
const context = await browser.createBrowserContext({
proxyServer: 'http://proxy.example:8080',
});
try {
const page = await context.newPage();
await page.goto('https://www.example.com/');
} finally {
await context.close();
}Створіть ще один контекст з іншим proxyServer для другого маршруту. Дві сторінки, створені в одному контексті, поділяють проксі-політику цього контексту; саме відкриття нової вкладки не вибирає нової кінцевої точки.
Параметр має назву proxyServer. Старіші приклади createIncognitoBrowserContext належать до попереднього покоління API.
BrowserContextOptions також приймає proxyBypassList. Тримайте прямі винятки в політиці цього контексту, а не припускайте, що вони прийшли з іншого контексту.
Для підтримуваного HTTP-проксі з іменем користувача й паролем Page.authenticate передає облікові дані перед навігацією. URL проксі вибирає посередника, а виклик автентифікації передає обліковий запис.
Це мережа браузера. Пакет, який перехоплює запит сторінки й виконує його відповіддю клієнта Node HTTP, створює інший транспортний шлях із власною поведінкою cookie, заголовків і TLS.
Виклик зберігає відповідальність за час життя спільного браузера. Закриття одного контексту закриває пов'язані сторінки, не завершуючи інші контексти.