puppeteer 设置需要授权的代理

今天在使用 puppeteer的时候需要使用带账号密码的代理,经过苦苦搜索才找到有效的代理:

安装使用:puppeteer-page-proxy

npm i puppeteer-page-proxy
const useProxy = require('puppeteer-page-proxy');
await useProxy(page, 'http://username:password@127.0.0.1:8000');

如果想每个请求使用不同的代理,可以这样设置

await page.setRequestInterception(true);
page.on('request', req => {
    useProxy(req, 'socks5://127.0.0.1:9000');
});

确保代理使用正确,使用下边的代码进行检测:

const data = await useProxy.lookup(page);
console.log(data.ip);

代理支持httphttpssocks4 and socks5 proxies,有其他问题欢迎留言讨论

发表回复