puppeteer调用HTTP代理
Node.js使用puppeteer调用Http代理IP的代码样例
温馨提示:
运行环境要求: node7.6.0或以上 + puppeteer
请先安装puppeteer:
npm i puppeteer
终端IP授权
// 引入puppeteer模块
const puppeteer = require('puppeteer');
// 要访问的目标网页
const url = 'http://api.91http.com/v1/tool/get-my-ip';
// 添加headers
const headers = {
'Accept-Encoding': 'gzip' // 使用gzip压缩让数据传输更快
};
// 代理服务器ip和端口
let proxy_ip = '159.138.141.125'
let proxy_port = 13916
(async ()=> {
// 新建一个浏览器实例
const browser = await puppeteer.launch({
headless: false, // 是否不显示窗口, 默认为true, 设为false便于调试
args: [
`--proxy-server=${proxy_ip}:${proxy_port}`,
'--no-sandbox',
'--disable-setuid-sandbox'
]
});
// 打开一个新页面
const page = await browser.newPage();
// 设置headers
await page.setExtraHTTPHeaders(headers);
// 访问目标网页
await page.goto(url);
})();
用户名密码授权
// 引入puppeteer模块
const puppeteer = require('puppeteer');
// 要访问的目标网页
const url = 'http://api.91http.com/v1/tool/get-my-ip';
// 添加headers
const headers = {
'Accept-Encoding': 'gzip' // 使用gzip压缩让数据传输更快
};
// 代理服务器ip和端口
let proxy_ip = '123.198.130.141'
let proxy_port = 19832
// 用户名密码授权
const username = 'username';
const password = 'password';
(async ()=> {
// 新建一个浏览器实例
const browser = await puppeteer.launch({
headless: false, // 是否不显示窗口, 默认为true, 设为false便于调试
args: [
`--proxy-server=${proxy_ip}:${proxy_port}`,
'--no-sandbox',
'--disable-setuid-sandbox'
]
});
// 打开一个新页面
const page = await browser.newPage();
// 设置headers
await page.setExtraHTTPHeaders(headers);
// 用户民密码认证
await page.authenticate({username: username, password: password});
// 访问目标网页
await page.goto(url);
})();
最后修改时间: 4 个月前