Zum Inhalt springen
Guides 2 Min. Lesezeit 783 Aufrufe

Puppeteer Proxy-Einrichtung für Node.js

Meistern Sie die Puppeteer Proxy-Einrichtung für Node.js-Projekte. Dieser Leitfaden behandelt Integration, Konfiguration und Best Practices für robuste Web-Automatisierung und Web-Scraping.

Browser
Puppeteer Proxy-Einrichtung für Node.js

Um einen Proxy für Puppeteer in Node.js einzurichten, konfigurieren Sie die Browser-Startargumente mit --proxy-server=<proxy_address>:<port>, um den gesamten Browser-Traffic über den angegebenen Proxy zu leiten. Dies ermöglicht die Maskierung von IP-Adressen, geografisches Targeting oder das Umgehen von Ratenbegrenzungen und IP-Sperren bei automatisierten Web-Interaktionen.

Grundlegende Proxy-Konfiguration

Puppeteer steuert eine Chromium-Instanz und übergibt Proxy-Einstellungen direkt über Kommandozeilenargumente. Das primäre Argument ist --proxy-server.

Spezifizieren eines Proxy-Servers

Das Argument --proxy-server akzeptiert die Adresse und den Port des Proxys. Das Protokoll (HTTP, HTTPS, SOCKS4, SOCKS5) kann explizit definiert werden; HTTP wird typischerweise angenommen, wenn es weggelassen wird.

const puppeteer = require('puppeteer');

async function launchBrowserWithProxy(proxyAddress) {
  const browser = await puppeteer.launch({
    args: [
      `--proxy-server=${proxyAddress}`,
      // Optional: For extreme anonymity, consider disabling WebRTC
      // '--disable-features=WebRTC' 
    ],
    headless: true, // or false for headful
  });
  const page = await browser.newPage();
  return { browser, page };
}

async function runBasicProxyExample() {
  const proxy = 'http://your-proxy-ip:port'; // Example: 'http://192.168.1.1:8080' or 'socks5://192.168.1.1:1080'
  let browser;
  try {
    const { browser: launchedBrowser, page } = await launchBrowserWithProxy(proxy);
    browser = launchedBrowser; // Assign to outer scope variable for finally block
    await page.goto('https://httpbin.org/ip'); // A service to show your external IP
    const ipInfo = await page.evaluate(() => document.body.textContent);
    console.log('External IP through proxy:', ipInfo);
  } catch (error) {
    console.error('Error launching browser with proxy:', error);
  } finally {
    if (browser) {
      await browser.close();
    }
  }
}

runBasicProxyExample();

Ersetzen Sie your-proxy-ip:port durch die tatsächliche IP-Adresse und den Port Ihres Proxy-Servers. Stellen Sie sicher, dass das Protokollpräfix (z.B. http://, socks5://) Ihrem Proxy-Typ entspricht.

Authentifizierte Proxys

Viele Proxy-Dienste erfordern eine Authentifizierung. Puppeteer handhabt dies über page.authenticate() nach der Browser- und Seiteninitialisierung, indem HTTP Basic Authentication Header an den Proxy gesendet werden.

Proxy-Authentifizierungsmethoden

  1. page.authenticate(): Empfohlen für HTTP Basic Authentication mit Puppeteer.
  2. username:password@ip:port in --proxy-server: Während einige Tools dieses Format direkt unterstützen, ist page.authenticate() der Standard-Puppeteer-Ansatz für die Authentifizierung.
const puppeteer = require('puppeteer');

async function launchBrowserWithAuthenticatedProxy(proxyAddress, username, password) {
  const browser = await puppeteer.launch({
    args: [`--proxy-server=${proxyAddress}`],
    headless: true,
  });
  const page = await browser.newPage();

  // Authenticate with the proxy
  await page.authenticate({ username, password });

  return { browser, page };
}

async function runAuthenticatedProxyExample() {
  const proxy = 'http://your-authenticated-proxy-ip:port';
  const proxyUsername = 'your_username';
  const proxyPassword = 'your_password';
  let browser;
  try {
    const { browser: launchedBrowser, page } = await launchBrowserWithAuthenticatedProxy(proxy, proxyUsername, proxyPassword);
    browser = launchedBrowser;
    await page.goto('https://httpbin.org/ip');
    const ipInfo = await page.evaluate(() => document.body.textContent);
    console.log('External IP through authenticated proxy:', ipInfo);
  } catch (error) {
    console.error('Error with authenticated proxy:', error);
  } finally {
    if (browser) {
      await browser.close();
    }
  }
}

runAuthenticatedProxyExample();

Proxy-Rotationsstrategien

Für groß angelegte Scraping-Aufgaben kann ein einzelner Proxy zu Ratenbegrenzungen führen. Die Proxy-Rotation beinhaltet das Wechseln zwischen mehreren Proxy-Servern, um Anfragen zu verteilen und die Anonymität zu wahren.

Implementierung der Proxy-Rotation

  1. Proxy-Liste pflegen: Speichern Sie verfügbare Proxys in einem Array, gegebenenfalls inklusive Authentifizierungsdetails.
  2. Auswahl-Logik: Implementieren Sie eine Strategie zur Auswahl eines Proxys für jede neue Browser-Instanz oder Anfrage. Gängige Strategien: Round-Robin, Zufällige Auswahl, Gewichtete Rotation.
const puppeteer = require('puppeteer');

// Example list of proxies, some with authentication details
const proxyConfigurations = [
  { address: 'http://proxy1.example.com:8080' },
  { address: 'http://auth-proxy1.example.com:8080', username: 'userA', password: 'passA' },
  { address: 'socks5://proxy3.
Aktualisiert: 03.03.2026
Zurück zur Kategorie

Lesen Sie auch

Guides 2 Min.

Proxy für Nike SNKRS: Limitierte Drops ergattern & mehrere Teilnahmen sichern

Nutze Residential- oder Mobile-Proxies für Nike SNKRS, um mit mehreren Accounts an Draws teilzunehmen, IP-Limits zu umgehen und limitierte Drops ohne Bans zu coppen. Welcher Typ zu wählen ist und wie man das Setup einrichtet.

Guides 2 Min.

So richten Sie einen Proxy auf dem iPhone ein (WLAN & SOCKS5)

Richten Sie einen Proxy auf dem iPhone über die nativen Wi-Fi-Einstellungen (HTTP/HTTPS) oder eine Proxy-App wie Shadowrocket für SOCKS5 und Mobilfunkabdeckung ein. Schritt-für-Schritt-iOS-Setup und die zu beachtenden Einschränkungen.

Guides 3 Min.

Proxy für Tinder: Mehrere Accounts & Sperren vermeiden

Nutze Mobile- oder Residential-Proxies für Tinder, um mehrere Profile zu betreiben und IP-Shadowbans zu vermeiden. Warum Mobile gewinnt, wie man es einrichtet und warum ein Proxy allein nicht deinen Standort ändert.

Guides 2 Min.

Proxy für StockX: Preise überwachen & Accounts verwalten

Nutzen Sie Residential-, ISP- oder Mobile-Proxys für StockX, um Preise zu überwachen, mehrere Accounts zu verwalten und Drops ohne Bans zu coppen. Hier erfahren Sie, welchen Typ Sie wählen sollten und wie Sie GProxy einrichten.

Guides 3 Min.

Proxy für OpenAI API: Zugriff, Rate Limits & Setup

Leite die OpenAI API über einen Residential- oder ISP-Proxy (GProxy +) weiter, um auf unterstützte Regionen zuzugreifen, 429-Rate-Limits zu umgehen und Accounts zu isolieren. Welcher Proxy zu verwenden ist, plus Python-Setup-Beispiele.

Guides 1 Min.

Einrichten eines Proxys in Cypress für E2E-Tests

Einrichten eines Proxys in Cypress: HTTP_PROXY-Variablen, cy-proxy-middleware und das Testen standortabhängiger Inhalte.

Testen Sie unsere Proxys

20.000+ Proxys in über 100 Ländern weltweit

support_agent
GProxy Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.