Hvernig á að setja upp auðkenndan proxy í Puppeteer (Node.js)
Updated:
Puppeteer stýrir Chrome og Chromium í gegnum DevTools Protocol (CDP) og býður upp á innbyggt await page.authenticate({ username, password }) forritaskil fyrir HTTP 407 proxy-auðkenningu. Með því að samtengja --proxy-server=http://ip:port og page.authenticate() geta Node.js vefsköfur þínar beint umferð í gegnum fasta VinaProxy proxy-þjóna án nokkurra viðbóta í vafra.
--proxy-server=http://ip:port + page.authenticate({ username, password })- 1 IP40.000 VND
- 5+ IP-tölur35.000 VND
- 10+ IP-tölur25.000 VND
- 20+ IP-tölur25.000 VND
- 50+ IP-tölur25.000 VND
- 100+ IP-tölur25.000 VND
- 200+ IP-tölur25.000 VND
- 500+ IP-tölur25.000 VND
- 1000+ IP-tölur22.000 VND
- 2000+ IP-tölur20.000 VND
- 1 IP40.000 VND
- 5+ IP-tölur35.000 VND
- 10+ IP-tölur25.000 VND
- 20+ IP-tölur25.000 VND
- 50+ IP-tölur25.000 VND
- 100+ IP-tölur25.000 VND
- 200+ IP-tölur25.000 VND
- 500+ IP-tölur25.000 VND
- 1000+ IP-tölur22.000 VND
- 2000+ IP-tölur20.000 VND
Tveggja þrepa proxy-uppsetning í Puppeteer
Settu aldrei user:pass@ inn í --proxy-server ræsistillinguna. Gefðu þess í stað upp hýsil og gátt við ræsingu og auðkenndu á Page-tilvikinu:
| Skref | Puppeteer-kóði | Af hverju þetta skiptir máli |
|---|---|---|
| 1. Ræstu Chromium | puppeteer.launch({ args: ['--proxy-server=http://ip:port'] }) | Beinir netsamskiptum Chromium á VinaProxy proxy-þjóninn þinn |
| 2. Auðkenndu síðu | await page.authenticate({ username, password }) | Gefur upp CDP-auðkenni fyrir HTTP 407 auðkenningarkröfur |
| 3. Farðu á vefslóð | await page.goto(url, { waitUntil: 'domcontentloaded' }) | Hleður markvefslóð í gegnum auðkenndu göngin |
Skipt á milli margra proxy-þjóna milli flipa með proxy-chain
- Mundu að
page.authenticate()er bundið við hvernPage-flipa fyrir sig—kallaðu á það á hverjum nýjum flipa sembrowser.newPage()skilar - Til að nota mismunandi proxy-þjóna í huliðsstillingum innan sama Chromium-ferils skaltu umvefja hverja
http://user:pass@ip:portvefslóð meðproxy-chainnpm-pakkanum (anonymizeProxy()) og sendaproxyServerinn íbrowser.createBrowserContext({ proxyServer }) - Samhæft við
puppeteer-extraogpuppeteer-extra-plugin-stealth
Skref fyrir skref
- 1
Sendu --proxy-server=http://ip:port inn í puppeteer.launch()
Ræstu vafrann með
const browser = await puppeteer.launch({ args: ['--proxy-server=http://ip:port'] });. - 2
Kallaðu á await page.authenticate() á nýju síðunni
Opnaðu flipa með
const page = await browser.newPage();og kallaðu áawait page.authenticate({ username: 'USER', password: 'PASS' });. - 3
Prófaðu IP-tölu tengingarinnar
Keyrðu
await page.goto('https://vinaproxy.com/api/my-ip');og skoðaðu JSON-svarið sem skilað er. - 4
Lokaðu vafraferlum
Kallaðu á
await browser.close();þegar verkinu er lokið.
Algengar spurningar
Af hverju kastar Puppeteer villunni `ERR_NO_SUPPORTED_PROXIES`?
Þessi villa kemur upp ef þú setur user:pass@ inn í --proxy-server=http://user:pass@ip:port. Hafðu --proxy-server=http://ip:port hreint og sendu inn auðkenni með await page.authenticate({ username, password }).
Af hverju mistókst annar flipi sem opnaður var með `browser.newPage()` með HTTP 407?
page.authenticate() gildir fyrir hvern flipa fyrir sig. Kallaðu á await secondPage.authenticate({ username, password }) áður en farið er á vefslóð á nýopnuðum flipa.
Eru VinaProxy proxy-þjónar með ómældu gagnamagni fyrir sköfun í headless Chrome?
Já. Allir Dedicated IPv4 og Static ISP pakkar fela í sér ótakmarkað mánaðarlegt gagnamagn.
Keyrðu Node.js Puppeteer-kerfið þitt með föstum IP-tölum
Ómældir Dedicated IPv4 og Static ISP proxy-þjónar samstundis í 7 löndum.
Kaupa Puppeteer proxy