Last active
February 29, 2024 07:26
-
-
Save jancurn/05ed1ce414ca1f8f5a2e5f1eb4b1a2c6 to your computer and use it in GitHub Desktop.
Example showing how to use the proxy-chain NPM package to let headless Chrome use a proxy server with username and password
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const puppeteer = require('puppeteer'); | |
const proxyChain = require('proxy-chain'); | |
(async() => { | |
const oldProxyUrl = 'http://bob:[email protected]:8000'; | |
const newProxyUrl = await proxyChain.anonymizeProxy(oldProxyUrl); | |
// Prints something like "http://127.0.0.1:45678" | |
console.log(newProxyUrl); | |
const browser = await puppeteer.launch({ | |
args: [`--proxy-server=${newProxyUrl}`], | |
}); | |
// Do your magic here... | |
const page = await browser.newPage(); | |
await page.goto('https://www.example.com'); | |
await page.screenshot({ path: 'example.png' }); | |
await browser.close(); | |
// Clean up, forcibly close all pending connections | |
await proxyChain.closeAnonymizedProxy(newProxyUrl, true); | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@jancurn I am trying to run puppeteer with proxy chain package on aws lambda but I am getting this error message:
code: