Puppeteer Proxy Configuration: Node.js Guide
How to use proxies with Puppeteer for headless Chrome automation.
OutreachProxy Team
Proxy Experts
Puppeteer Proxy Setup
Configure proxies in Puppeteer for Node.js browser automation.
TL;DR: Pass --proxy-server argument to launch(). For authentication, intercept requests and add auth headers.
Basic Setup
const puppeteer = require('puppeteer');const browser = await puppeteer.launch({
args: ['--proxy-server=proxy.outreachproxy.com:8080']
});
const page = await browser.newPage();
await page.goto('https://httpbin.org/ip');
With Authentication
const browser = await puppeteer.launch({
args: ['--proxy-server=proxy.outreachproxy.com:8080']
});const page = await browser.newPage();
await page.authenticate({
username: 'your_username',
password: 'your_password'
});
await page.goto('https://httpbin.org/ip');
SOCKS5 Proxy
const browser = await puppeteer.launch({
args: ['--proxy-server=socks5://proxy.outreachproxy.com:1080']
});
Per-Request Proxy (puppeteer-extra)
const puppeteer = require('puppeteer-extra');
const ProxyPlugin = require('puppeteer-extra-plugin-proxy');puppeteer.use(ProxyPlugin({
address: 'proxy.outreachproxy.com',
port: 8080,
credentials: {
username: 'user',
password: 'pass'
}
}));
Best Practices
1. Set reasonable timeouts 2. Handle navigation errors 3. Close browser on completion 4. Rotate proxies for scale
Written by OutreachProxy Team
Proxy Experts
The OutreachProxy team helps businesses scale their cold outreach with reliable static residential proxies. We share our expertise to help you succeed.