Integratsiyalar · Oʻrta

Puppeteer va boshsiz Chrome bilan proksilarni qoʻllash

Brauzer ishga tushishida yoki qoʻllab-quvvatlanadigan Puppeteer brauzer kontekstida proksi oʻrnating, soʻngra navigatsiyadan oldin ishonchli maʼlumotlarni taqdim qiling. Har bir kontekstda belgilangan chiqib ketishni tekshiring va mustaqil ish jarayonlarini alohida sessiyalarda saqlang.

Oʻqish 5 boʻlim Ўрганилган Редакторлар гуруҳи Proxy Cyber

Proksi bilan ishga tushirish va tasdiqlash#

Node.js
import puppeteer from "puppeteer";

const browser = await puppeteer.launch({
  headless: true,
  args: ["--proxy-server=http://res.proxy-cyber.com:9000", "--no-first-run"],
});
const page = await browser.newPage();
await page.authenticate({ username: "USER-cc-us-sid-run1-ttl-30m", password: "PASS" });

await page.goto("https://api.ipify.org", { waitUntil: "domcontentloaded", timeout: 45000 });
console.log(await page.evaluate(() => document.body.innerText));
await browser.close();

Har bir mustaqil ish oqimi uchun alohida sessiya identifikatorini qoʻllang, agar belgilangan geytni qoʻllab-quvvatlasa. Ulanish maʼlumotlarida ruxsat etilgan vaqt va joy parametrlarini tasdiqlang. Uy qurilmasi talab qilingan vaqtdan oldin uzilishi mumkin; seans kunlar davomida bir xil IP'ga ega boʻlishini kafolatlamaydi. Faqat bitta manzil uchun, ajratilgan statik mahsulot bilan taqqoslang.

Har bir brauzer uchun bitta proksi#

Oʻchirish darajasidagi --proxy-server parametri brauzerning standart yoʻllashiga mos keladi. Hozirgi Puppeteer ham browser.createBrowserContext() da proxyServer'ni qoʻllab-quvvatlaydi, page.authenticate() orqali taqdim etilgan ishonchli maʼlumotlar bilan. Proksi oʻrnatishlari uchun alohida kontekst va doimiy profillar uchun alohida foydalanuvchi maʼlumotlari katalogini ishlating; har bir kontekstda chiqishni tekshiring.

Rasmlar, shriftlar va mediani bloklash#

Talab qilingan toʻsiq
await page.setRequestInterception(true);
page.on("request", (req) => {
  const t = req.resourceType();
  if (["image", "media", "font", "stylesheet"].includes(t)) return req.abort();
  req.continue();
});

Muvofiqlik#

  • Set Accept-Language va chiqish mamlakati uchun vaqt zonasi: page.setExtraHTTPHeaders({\"Accept-Language\": \"de-DE,de;q=0.9\"}) va page.emulateTimezone(\"Europe/Berlin\").
  • Bu bilan WebRTC sachrashini oʻchirish --force-webrtc-ip-handling-policy=disable_non_proxied_udp boshlanish argumentlarida.
  • Har bir hisob uchun bitta brauzerni saqlash; agar hisob qaytaruvchi qurilma koʻrinishida boʻlsa, uning foydalanuvchi maʼlumotlari katalogini qayta ishlatish.

Siz uchrashadigan xatolar#

SimptomlarSababToʻgʻrilash
net::ERR_TUNNEL_CONNECTION_FAILEDShlyuz CONNECT'ni rad etdi: ishonchli maʼlumotlar, parametr yoki chiqish yoʻqGeyt kodini oʻqish uchun cURL -v bilan qayta ishlash
net::ERR_PROXY_AUTH_UNSUPPORTED / iltimoslarYuklashdan keyin authenticate () chaqirildiGotodan oldin page.authenticate ni chaqirish
Har bir brauzerda bitta IPXuddi shu sessiya ID qaytadan ishlatilmoqdaHar bir brauzer uchun alohida -sid-ni qoʻllash yoki uni qoldirish
Birinchi yuklash juda sekinUydan chiqish va ogʻir sahifaResurslarni bloklash; vaqtni 45 soniyaga oshirish

Odamlar soʻraydigan savollar.#

Puppeteer maxfiy soʻz bilan SOCKS5'ni ishlata oladimi?

Chrome SOCKS5 autentifikatsiyasini qoʻllamaydi. HTTP proksini page.authenticate bilan 9000 portda ishlating yoki server IP'ingizni oq roʻyxatga kiriting va --proxy-server=socks5://res.proxy-cyber.com:9001 parametrini oʻtkazing.

Hisobingiz

Barcha proksilarni bitta hisobdan boshqaring

Tarmoqlarni taqqoslang, buyurtma bering va bir paneldan balansingizni va qoʻllab-quvvatlash talablarini kuzating. Bizning jamoamiz toʻlovlarni koʻrib chiqadi va etkazib berishdan keyin aloqa maʼlumotlarini taqdim etadi.

Hisob yaratish