Integracje · Pośrednie

Korzystanie z proxy z Marionetką i chromem bez głowy

Ustaw serwer proxy przy uruchomieniu przeglądarki lub w obsługiwanym kontekście przeglądarki Puppeteer, a następnie podaj dane uwierzytelniające przed nawigacją. Sprawdź przypisane wyjście w każdym kontekście i zachowaj niezależne przepływy pracy w oddzielnych sesjach.

2 min odczytu 5 sekcji Sprawdzono Zespół redakcyjny Proxy Cyber

Uruchom z proxy i uwierzytelniaj#

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();

Użyj odrębnego identyfikatora sesji dla każdego niezależnego przepływu pracy, jeśli obsługuje go przypisana brama. Potwierdź dozwolony czas trwania i parametry lokalizacji w szczegółach połączenia. Urządzenie domowe może odłączyć się przed żądanym czasem trwania; sesja lepka nie gwarantuje tego samego adresu IP przez kilka dni. Aby uzyskać stały adres, porównaj dedykowany produkt statyczny.

Jeden proxy na przeglądarkę#

Ustawienie --proxy-server na poziomie uruchamiania dotyczy domyślnego routingu tej przeglądarki. Obecny Puppeteer obsługuje także proxyServer w przeglądarce.createBrowserContext(), z poświadczeniami dostarczanymi poprzez page.authenticate(). Używaj oddzielnych kontekstów dla różnych ustawień proxy i oddzielnych katalogów danych użytkownika dla trwałych profili; sprawdź wyjście w każdym kontekście.

Blokowanie obrazów, czcionek i mediów#

Żądanie przechwycenia
await page.setRequestInterception(true);
page.on("request", (req) => {
  const t = req.resourceType();
  if (["image", "media", "font", "stylesheet"].includes(t)) return req.abort();
  req.continue();
});

Spójność#

  • Ustaw Accept-Language oraz strefa czasowa do kraju wyjścia: page.setExtraHTTPHeaders({\"Accept-Language\": \"de-DE,de;q=0.9\"}) oraz page.emulateTimezone(\"Europe/Berlin\").
  • Wyłącz przecieki WebRTC z --force-webrtc-ip-handling-policy=disable_non_proxied_udp na dyskach startowych.
  • Zachowaj jedną przeglądarkę na konto; ponownie wykorzystaj swój katalog danych użytkownika, jeśli konto powinno wyglądać jak urządzenie powracające.

Błędy, które spotkasz#

SymptomPrzyczynaNapraw
netto:: ERR _ TUNNEL _ CONNECTION _ FAIledBrama odmówiła CONNECT: dane uwierzytelniające, parametr lub brak wyjściaOdtworzyć za pomocą cURL -v, aby odczytać kod bramy
net:: ERR _ PROXY _ AUTH _ NIEZALEŻNE / PISEMNEuwierzytelnianie () wywołane po nawigacjiZadzwoń do strony. Phentivate przed goto
Ten sam adres IP w każdej przeglądarceTen sam identyfikator sesji ponownie użytyUżyj oddzielnego -sid- na przeglądarkę lub pomiń go
Bardzo powoli pierwszy ładunekWyjście gospodarstwa domowego plus ciężka stronaZablokuj zasoby; wydłuż czas do 45 s

Pytania, które ludzie zadają#

Czy Puppeteer może używać SOCKS5 z hasłem?

Chrome nie obsługuje uwierzytelniania SOCKS5. Użyj serwera proxy HTTP na porcie 9000 z page.authenticate lub umieść adres IP swojego serwera na białej liście i podaj --proxy-server=socks5://res.proxy-cyber.com:9001.

Twoje konto

Zarządzaj swoimi proxy na jednym koncie

Porównuj sieci, składaj zamówienia i śledź saldo oraz prośby o wsparcie z jednego pulpitu nawigacyjnego. Nasz zespół sprawdza płatności i podaje szczegóły połączenia po dostawie.

Utwórz konto