{"id":47424,"date":"2026-08-27T09:21:09","date_gmt":"2026-08-27T09:21:09","guid":{"rendered":"https:\/\/floppydata.com\/nicht-kategorisiert\/so-verwenden-sie-einen-proxy-in-puppeteer\/"},"modified":"2026-08-27T09:21:09","modified_gmt":"2026-08-27T09:21:09","slug":"how-to-use-a-proxy-in-puppeteer","status":"publish","type":"post","link":"https:\/\/floppydata.com\/de\/blog\/how-to-use-a-proxy-in-puppeteer\/","title":{"rendered":"So verwenden Sie einen Proxy in Puppeteer"},"content":{"rendered":"<p>Puppeteer ist eine der beliebtesten Node.js-Bibliotheken und ein leistungsstarkes Tool f\u00fcr automatisierte Aufgaben wie Web-Scraping, Tests, SEO-Recherchen oder Preis\u00fcberwachung \u00fcber Chrome- oder Chromium-Browser. Wenn Sie schon einmal mit automatisierten Workflows in gro\u00dfem Ma\u00dfstab gearbeitet haben, kennen Sie das Problem bereits: Websites begrenzen die Zugriffsrate, drosseln Ihre Verbindung, blockieren Anfragen sofort oder setzen Ihre IP-Adresse sogar komplett auf die Sperrliste.<\/p>\n<p>Diese Komplikationen kosten Sie nicht nur wertvolle Zeit und Geld, sondern k\u00f6nnen auch die Vertrauensbewertung Ihrer pers\u00f6nlichen Adresse erheblich beeintr\u00e4chtigen und damit wiederum alle zuk\u00fcnftigen Online-Aktivit\u00e4ten negativ beeinflussen. Gl\u00fccklicherweise gibt es eine Methode, mit der sich diese Probleme m\u00fchelos l\u00f6sen lassen und die es gleichzeitig erm\u00f6glicht, geografische Beschr\u00e4nkungen zu umgehen sowie automatisierte Anfragen zu verteilen, um eine h\u00f6here Erfolgsquote und eine bessere Verbindungsgeschwindigkeit zu erzielen. Ich spreche nat\u00fcrlich von Proxys.<\/p>\n<p>In diesem Artikel werden wir genau kl\u00e4ren, warum Sie Proxys ben\u00f6tigen und welche Art f\u00fcr Ihre Aufgabe erforderlich ist. Au\u00dferdem werden wir die grundlegende Konfiguration, die Authentifizierung und die Bedeutung der Protokolle erl\u00e4utern. Dar\u00fcber hinaus werde ich Ihnen einen hervorragenden Anbieter empfehlen, der sich in meinen eigenen Automatisierungspipelines besonders gut bew\u00e4hrt hat.<\/p>\n<h2>Was ist ein Puppeteer-Proxy und wozu ben\u00f6tigen Sie einen?<\/h2>\n<p>Ein Puppeteer-Proxy fungiert als Vermittler zwischen Ihrem automatisierten Skript und der Website, auf die Sie abzielen. Indem Ihre Anfragen \u00fcber den dedizierten Server des Anbieters geleitet werden, verbirgt der Proxy Ihre tats\u00e4chliche IP-Adresse, sodass die Zielwebsite die IP-Adresse des Proxys sieht und nicht Ihre eigene.<\/p>\n<p>Dennoch ist die IP-Maskierung nur die Spitze des Eisbergs. Hier finden Sie eine vollst\u00e4ndige Liste der Vorteile, die ein Proxy f\u00fcr Ihren Puppeteer-Workflow bietet:<\/p>\n<ul>\n<li><strong>IP-Sperren, Ratenbegrenzung und Drosselung vermeiden<\/strong>: Websites schr\u00e4nken h\u00e4ufig den Zugriff von IP-Adressen ein, die eine gro\u00dfe Anzahl aufeinanderfolgender Anfragen stellen. Wenn Ihre Verbindung nicht g\u00e4nzlich blockiert wird, kann sie erheblich verlangsamt oder mit CAPTCHAs \u00fcberflutet werden. Ein gut konfigurierter Pool <a href=\"https:\/\/floppydata.com\/proxy-type\/rotating-proxy\/\">rotierender Proxys<\/a> l\u00f6st dieses Problem \u2013 selbst wenn eine Ihrer IP-Adressen gesperrt wird, springt eine andere ein, um einen unterbrechungsfreien Arbeitsablauf zu gew\u00e4hrleisten.<\/li>\n<li><strong>Umgehung geografischer Beschr\u00e4nkungen<\/strong>: Ein gro\u00dfer Teil der Internetinhalte ist durch geografische Beschr\u00e4nkungen verborgen oder wird je nach Standort, von dem die Anfrage stammt, anderweitig angepasst. <a href=\"https:\/\/floppydata.com\/proxy-type\/residential-proxy\/\">Mit Residential-Proxys<\/a> k\u00f6nnen Sie mit h\u00f6chster Pr\u00e4zision (bestimmte Bundesl\u00e4nder, St\u00e4dte oder Postleitzahlen) eine Adresse von \u00fcberall auf der Welt beziehen und so im Internet surfen, als bef\u00e4nden Sie sich physisch in dieser Region.<\/li>\n<li><strong>Verbesserung der Erfolgsquote von Anfragen<\/strong>: Die Verteilung von Anfragen auf einen Proxy-Pool reduziert Verbindungsfehler und Timeouts drastisch, insbesondere bei intensiven Scraping-Aufgaben.<\/li>\n<\/ul>\n<p>Dies erweist sich als \u00e4u\u00dferst n\u00fctzlich, wenn nicht sogar entscheidend, bei:<\/p>\n<ul>\n<li><strong>Web-Scraping in gro\u00dfem Ma\u00dfstab<\/strong><\/li>\n<li><strong>Anzeigen\u00fcberpr\u00fcfung<\/strong><\/li>\n<li><strong>SEO-\u00dcberwachung<\/strong><\/li>\n<li><strong>Qualit\u00e4tssicherung und Tests<\/strong><\/li>\n<li><strong>Lokalisierung<\/strong><\/li>\n<\/ul>\n<p>Kurz gesagt: Wenn Sie Puppeteer f\u00fcr mehr als nur einen einfachen einmaligen Test einsetzen, sind Proxys unverzichtbar \u2013 ein qualitativ hochwertiges Proxy-Netzwerk ist oft der Unterschied zwischen einem fehleranf\u00e4lligen Skript und einer zuverl\u00e4ssigen Datenpipeline.<\/p>\n<h2>Puppeteer: VPN oder Proxy \u2013 Welche Option ist die richtige?<\/h2>\n<p> Wenn es um Umgehungswerkzeuge geht, stellt sich unweigerlich die Frage: Was ist besser, ein Proxy oder ein VPN? Beide haben ihre St\u00e4rken und Schw\u00e4chen und liefern bei korrekter Anwendung und im passenden Anwendungsfall hervorragende Ergebnisse. Da wir uns in diesem Artikel speziell auf die Puppeteer-Automatisierung konzentrieren, wollen wir untersuchen, welches Werkzeug besser zu Puppeteer-Workflows passt.<\/p>\n<p>Aus Sicht des Nutzers sind VPNs und Proxys recht \u00e4hnlich \u2013 beide verbergen Ihre IP-Adresse, indem sie Ihnen eine neue zuweisen. Doch damit enden die Gemeinsamkeiten auch schon. Ein VPN leitet den gesamten Datenverkehr von Ihrem Ger\u00e4t \u00fcber einen verschl\u00fcsselten Tunnel weiter, um Sie mit dem Server des Anbieters zu verbinden. Von dort aus k\u00f6nnen Sie nach Belieben im gesamten Internet surfen.<\/p>\n<p>Proxys hingegen verbergen Ihre IP-Adresse jeweils nur vor einer einzigen Website oder Anwendung (derjenigen, mit der Sie eine Verbindung herstellen), w\u00e4hrend die Verschl\u00fcsselung vom gew\u00e4hlten Protokoll bestimmt wird \u2013 HTTP bietet keine Verschl\u00fcsselung, HTTPS wird f\u00fcr eine grundlegende Verschl\u00fcsselung verwendet und SOCKS5 f\u00fcr maximale Verschl\u00fcsselung.<\/p>\n<h3>Warum ist das von Bedeutung?<\/h3>\n<p>Diese beiden Hauptunterschiede zeichnen die Umgehungstools in der Praxis am deutlichsten aus. Dank ihrer Verschl\u00fcsselung eignet sich ein VPN hervorragend f\u00fcr den Schutz der Privatsph\u00e4re und die Anonymit\u00e4t im Internet, w\u00e4hrend Proxys aufgrund ihres geringeren Overheads hohe Geschwindigkeiten gew\u00e4hrleisten und gleichzeitig enorme Mengen an Nutzerdatenverkehr verarbeiten k\u00f6nnen. Da ein VPN Ihren gesamten Datenverkehr umleitet, kann es Ihnen zudem jeweils nur eine IP-Adresse zur Verf\u00fcgung stellen, w\u00e4hrend Proxys so viele gleichzeitige Verbindungen bieten, wie Sie w\u00fcnschen.<\/p>\n<p>Hier finden Sie eine Vergleichstabelle zur besseren Veranschaulichung:<\/p>\n<table class=\"fldt-blog-table\">\n<tbody>\n<tr>\n<td><\/td>\n<td><strong>VPN<\/strong><\/td>\n<td><strong>Proxy<\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong>IP-Maskierung<\/strong><\/td>\n<td>Ja<\/td>\n<td>Ja<\/td>\n<\/tr>\n<tr>\n<td><strong>Verschl\u00fcsselung<\/strong><\/td>\n<td>Ja, der gesamte Datenverkehr des Ger\u00e4ts<\/td>\n<td>Nur mit dem SOCKS5-Protokoll, pro Website\/pro App<\/td>\n<\/tr>\n<tr>\n<td><strong>Geschwindigkeit<\/strong><\/td>\n<td>Mittel<\/td>\n<td>Hoch<\/td>\n<\/tr>\n<tr>\n<td><strong>Gleichzeitige Verbindungen<\/strong><\/td>\n<td>Jeweils eine IP-Adresse<\/td>\n<td>Mehrere IP-Adressen gleichzeitig<\/td>\n<\/tr>\n<tr>\n<td><strong>Drehzahlregelung<\/strong><\/td>\n<td>Eingeschr\u00e4nkt<\/td>\n<td>Integriert<\/td>\n<\/tr>\n<tr>\n<td><strong>Genauigkeit des Geo-Targeting<\/strong><\/td>\n<td>Eingeschr\u00e4nkt (auf L\u00e4nderebene)<\/td>\n<td>Stadt, Bundesland, Postleitzahl, ASN-Ebene (je nach Anbieter)<\/td>\n<\/tr>\n<tr>\n<td><strong>CAPTCHA-\/Block-Behandlung<\/strong><\/td>\n<td>Manueller Eingriff erforderlich<\/td>\n<td>Wird durch die automatische Drehung abgewickelt<\/td>\n<\/tr>\n<tr>\n<td><strong>Skalierbarkeit<\/strong><\/td>\n<td>Eingeschr\u00e4nkt<\/td>\n<td>Hoch skalierbar<\/td>\n<\/tr>\n<tr>\n<td><strong>Am besten geeignet f\u00fcr<\/strong><\/td>\n<td>den privaten Gebrauch<\/td>\n<td>Automatisierung in gro\u00dfem Ma\u00dfstab<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Obwohl VPNs potenziell in Ihr Puppeteer-Skript integriert werden k\u00f6nnen, ist das Ergebnis dieses Vorhabens alles andere als ideal. Mit anderen Worten: VPNs eignen sich besser f\u00fcr das individuelle Surfen, w\u00e4hrend Proxys speziell f\u00fcr Automatisierung, Web-Scraping, Tests und die Datenerfassung in gro\u00dfem Ma\u00dfstab konzipiert sind.<\/p>\n<h2>So verwenden Sie einen Proxy in Puppeteer: Grundlegende Einrichtung mit Floppydata<\/h2>\n<p>Kommen wir nun zum Abschnitt des Artikels \u00fcber die Proxy-Konfiguration und die Integration in Puppeteer. Zur Unterst\u00fctzung bei der Einrichtung und der Demonstration des Proxys werde ich Floppydata verwenden.<\/p>\n<p>Floppydata ist bereits seit einiger Zeit mein bevorzugter Proxy-Anbieter. Der Dienst gew\u00e4hrleistet eine konstante Verf\u00fcgbarkeit von 99,99 % und hohe Vertrauenswerte und bietet somit eine unterbrechungsfreie Verbindung f\u00fcr jede automatisierte Pipeline. Neben der hervorragenden Leistung bietet Floppydata einen der besten Preise auf dem Markt \u2013 nur 1 $\/GB f\u00fcr rotierende IP-Adressen und 5 $\/IP f\u00fcr ISP-Proxys. Damit eignet sich der Dienst ideal f\u00fcr Nutzer, die gro\u00df angelegte oder datenintensive Vorg\u00e4nge ausf\u00fchren und dabei auf ihr Budget achten m\u00fcssen.<\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"alignnone size-full wp-image-47251\" src=\"https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image2-1.png\" alt=\"Startseite des Web-Datenzugriffsdienstes\" width=\"1999\" height=\"1132\" srcset=\"https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image2-1.png 1999w, https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image2-1-300x170.png 300w, https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image2-1-1024x580.png 1024w, https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image2-1-768x435.png 768w, https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image2-1-1536x870.png 1536w\" sizes=\"(max-width: 1999px) 100vw, 1999px\" \/><\/p>\n<p>Der erste Schritt zur Integration von Proxys in Ihr Puppeteer-Skript besteht darin, einen Proxy zu erwerben. Mit Floppydata ist dies mit nur wenigen Klicks erledigt.<\/p>\n<p>Nach der Anmeldung gelangen Sie zum Dashboard von Floppydata. W\u00e4hlen Sie zun\u00e4chst einen geeigneten Tarif aus und fahren Sie mit der Zahlung fort. F\u00fcr automatisierte Workflows empfehle ich den Tarif \u201eRotating Proxy\u201c, der drei Arten von IP-Adressen (Privathaushalte, Mobilfunk und Rechenzentren) umfasst, zwischen denen Sie nach Belieben wechseln k\u00f6nnen.<\/p>\n<p>Die n\u00e4chsten Schritte k\u00f6nnten nicht einfacher sein \u2013 selbst wenn Sie sich mit Proxy-Diensten nicht besonders gut auskennen, sorgt die \u00fcbersichtliche Benutzeroberfl\u00e4che von Floppydata daf\u00fcr, dass Sie sich nicht verirren.<\/p>\n<p>Navigieren Sie in der linken Seitenleiste zur Registerkarte \u201eGet proxy credentials\u201c (Proxy-Anmeldedaten abrufen). Dort erhalten Sie einen Benutzernamen und ein zugeh\u00f6riges Passwort f\u00fcr Ihr Konto; f\u00fcr die Zwecke dieser Demonstration erstellen wir jedoch ein spezielles Profil f\u00fcr Puppeteer \u2013 dadurch wird ein neuer Proxy mit bereits integrierter Authentifizierung generiert. Wie Sie sehen k\u00f6nnen, k\u00f6nnen Sie beliebig viele separate Unterbenutzer anlegen, was die weitere Verwaltung erheblich vereinfacht.<\/p>\n<p>W\u00e4hlen Sie anschlie\u00dfend einfach die gew\u00fcnschten Parameter aus den angezeigten Dropdown-Listen aus. W\u00e4hrend Sie die Angaben eingeben, werden diese gleichzeitig in die Proxy-Zeichenkette eingebettet. Sobald Sie mit den Parametern zufrieden sind, k\u00f6nnen Sie einfach einen Codeausschnitt oder die Proxy-Zeichenkette kopieren.<\/p>\n<p><video style=\"max-width: 100%; height: auto; display: block; margin: 0 auto;\" preload=\"metadata\" autoplay=\"autoplay\" loop=\"loop\" muted=\"\" width=\"300\" height=\"150\"><source src=\"https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/Floppydata-Puppeteer.mp4\" type=\"video\/mp4\"\/>Ihr Browser unterst\u00fctzt das Video-Tag nicht.<\/video><\/p>\n<p> In dieser Demo konzentrieren wir uns darauf, wie die Grundeinrichtung mit einer Proxy-Zeichenkette funktioniert. Hier finden Sie einen Codeausschnitt f\u00fcr eine Proxy-Integration:<\/p>\n<h3>Puppeteer-Proxy mit Authentifizierung \u2013 Methode \u201epage.authenticate\u201c<\/h3>\n<p><strong>Installation:<\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">bash<\/span><\/div>\n<pre style=\"margin: 0; padding: 16px 22px; overflow-x: auto;\"><code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; font-size: 14px; line-height: 1.6; color: #50fa7b;\">npm install puppeteer<\/code><\/pre>\n<\/div>\n<p><strong>Grundlegende Einrichtung:  <\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">JavaScript<\/span><\/div>\n<pre style=\"margin: 0; padding: 18px 24px; overflow-x: auto; font-family: 'Fira Code',Consolas,monospace; font-size: 14px; line-height: 1.65; color: #f8f8f2;\"><code><span style=\"color: #ff79c6;\">const<\/span> puppeteer = <span style=\"color: #8be9fd;\">require<\/span>(<span style=\"color: #f1fa8c;\">'puppeteer'<\/span>);\n\n(<span style=\"color: #ff79c6;\">async<\/span> () =&gt; {\n    <span style=\"color: #ff79c6;\">const<\/span> PROXY_USER = <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup01'<\/span>;\n    <span style=\"color: #ff79c6;\">const<\/span> PROXY_PASS = <span style=\"color: #f1fa8c;\">'your_password'<\/span>;\n    <span style=\"color: #ff79c6;\">const<\/span> PROXY_SERVER = <span style=\"color: #f1fa8c;\">'geo.g-w.info:10080'<\/span>;\n\n    <span style=\"color: #ff79c6;\">const<\/span> browser = <span style=\"color: #ff79c6;\">await<\/span> puppeteer.<span style=\"color: #50fa7b;\">launch<\/span>({\n        args: [<span style=\"color: #f1fa8c;\">`--proxy-server=${<\/span>PROXY_SERVER<span style=\"color: #f1fa8c;\">}`<\/span>]\n    });\n\n    <span style=\"color: #ff79c6;\">const<\/span> page = <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">newPage<\/span>();\n\n    <span style=\"color: #6272a4;\">\/\/ Authenticate<\/span>\n    <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">authenticate<\/span>({\n        username: PROXY_USER,\n        password: PROXY_PASS\n    });\n\n    <span style=\"color: #6272a4;\">\/\/ Navigate<\/span>\n    <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">goto<\/span>(<span style=\"color: #f1fa8c;\">'https:\/\/httpbin.org\/ip'<\/span>);\n\n    <span style=\"color: #ff79c6;\">const<\/span> content = <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">content<\/span>();\n    console.<span style=\"color: #50fa7b;\">log<\/span>(content);\n\n    <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">close<\/span>();\n})();<\/code><\/pre>\n<\/div>\n<p>Sobald der Code eingerichtet ist, kopieren Sie einfach Ihre Proxy-Anmeldedaten aus dem Floppydata-Dashboard und f\u00fcgen Sie sie an den entsprechenden Stellen ein \u2013 Ihren Benutzernamen (die gesamte Zeichenfolge, die wir im obigen GIF kopiert haben) in das Feld \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">PROXY_USER<\/code> \u201c und Ihr Passwort in das Feld \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">PROXY_PASS<\/code> \u201c. <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">PROXY_SERVER<\/code> folgt einem einfachen  <code style=\"font-family: 'Fira Code',Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">hostname:port<\/code>  Format, wobei der Hostname <a href=\"http:\/\/geo.g-w.info\" target=\"_blank\" rel=\"noopener\">\u201egeo.g-w.info\u201c<\/a> lautet und die Portbereiche durch das gew\u00e4hlte Protokoll definiert sind \u2013 10080 f\u00fcr HTTP, 10443 f\u00fcr HTTPS und 10800 f\u00fcr SOCKS5.<\/p>\n<p>Diese Methode umfasst auch die native Authentifizierung und unterst\u00fctzt sowohl HTTP als auch HTTPS \u2013 geben Sie Ihren Benutzernamen und Ihr Passwort unter <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #7c3aed; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">page.authenticate<\/code> ein, um Ihren Proxy sofort mit der Authentifizierung zu integrieren; es sind keine zus\u00e4tzlichen Einstellungen und keine neuen Seiten erforderlich.<\/p>\n<h3>Proxy-Ketten-Authentifizierung<\/h3>\n<p>Eine weitere Methode der Proxy-Authentifizierung, die haupts\u00e4chlich f\u00fcr benutzerdefinierte Fehlermeldungen, benutzerdefinierte Antworten und die Erfassung von Verkehrsstatistiken verwendet wird \u2013 oder wenn Sie Anmeldedaten direkt in die Proxy-URL einbetten m\u00fcssen \u2013, ist das npm-Paket \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">proxy-chain<\/code> \u201c. Der entscheidende Bestandteil dieser Methode ist \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #7c3aed; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">anonymizeProxy(proxy)<\/code> \u201c, das einen lokalen Proxy-Server startet.<\/p>\n<p><strong>Installieren:<\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">bash<\/span><\/div>\n<pre style=\"margin: 0; padding: 16px 22px; overflow-x: auto;\"><code style=\"font-family: 'Fira Code',Consolas,monospace; font-size: 14px; line-height: 1.6; color: #50fa7b;\">npm install proxy-chain<\/code><\/pre>\n<\/div>\n<p><strong>Einrichtung:  <\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">JavaScript<\/span><\/div>\n<pre style=\"margin: 0; padding: 18px 24px; overflow-x: auto; font-family: 'Fira Code',Consolas,monospace; font-size: 14px; line-height: 1.65; color: #f8f8f2;\"><code><span style=\"color: #ff79c6;\">const<\/span> puppeteer = <span style=\"color: #8be9fd;\">require<\/span>(<span style=\"color: #f1fa8c;\">'puppeteer'<\/span>);\n<span style=\"color: #ff79c6;\">const<\/span> proxyChain = <span style=\"color: #8be9fd;\">require<\/span>(<span style=\"color: #f1fa8c;\">'proxy-chain'<\/span>);\n\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_SERVER = <span style=\"color: #f1fa8c;\">'geo.g-w.info:10080'<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_USER = <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup01'<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_PASS = <span style=\"color: #f1fa8c;\">'your_password'<\/span>;\n\n(<span style=\"color: #ff79c6;\">async<\/span> () =&gt; {\n    <span style=\"color: #ff79c6;\">const<\/span> proxy = <span style=\"color: #f1fa8c;\">`http:\/\/${<\/span>PROXY_USER<span style=\"color: #f1fa8c;\">}:${<\/span>PROXY_PASS<span style=\"color: #f1fa8c;\">}@${<\/span>PROXY_SERVER<span style=\"color: #f1fa8c;\">}`<\/span>;\n\n    <span style=\"color: #ff79c6;\">const<\/span> anonymizedProxy = <span style=\"color: #ff79c6;\">await<\/span> proxyChain.<span style=\"color: #50fa7b;\">anonymizeProxy<\/span>(proxy);\n\n    <span style=\"color: #ff79c6;\">const<\/span> browser = <span style=\"color: #ff79c6;\">await<\/span> puppeteer.<span style=\"color: #50fa7b;\">launch<\/span>({\n        args: [<span style=\"color: #f1fa8c;\">`--proxy-server=${<\/span>anonymizedProxy<span style=\"color: #f1fa8c;\">}`<\/span>],\n    });\n\n    <span style=\"color: #ff79c6;\">const<\/span> page = <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">newPage<\/span>();\n    <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">goto<\/span>(<span style=\"color: #f1fa8c;\">'https:\/\/httpbin.org\/ip'<\/span>);\n    <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">screenshot<\/span>({ path: <span style=\"color: #f1fa8c;\">'example2.png'<\/span> });\n\n    <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">close<\/span>();\n    <span style=\"color: #ff79c6;\">await<\/span> proxyChain.<span style=\"color: #50fa7b;\">closeAnonymizedProxy<\/span>(anonymizedProxy, <span style=\"color: #bd93f9;\">true<\/span>);\n})();<\/code><\/pre>\n<\/div>\n<p>F\u00fcr diese Methode ben\u00f6tigen Sie dieselben Anmeldedaten wie zuvor sowie Ihre Proxy-URL im folgenden Format: <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">Protocol:\/\/Username:Password@Hostname:Port<\/code>. Eine gebrauchsfertige Zeichenfolge finden Sie im Dashboard von Floppydata direkt unter der Proxy-Konfiguration \u2013 klicken Sie auf \u201eProxy-Zeichenfolgen\u201c, dann auf \u201eAls Liste\u201c und w\u00e4hlen Sie das gew\u00fcnschte Format aus der Dropdown-Liste aus.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-47263\" src=\"https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image1.png\" alt=\"Oberfl\u00e4che zur Konfiguration der Proxy-Einstellungen\" width=\"1816\" height=\"788\" srcset=\"https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image1.png 1816w, https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image1-300x130.png 300w, https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image1-1024x444.png 1024w, https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image1-768x333.png 768w, https:\/\/floppydata.com\/wp-content\/uploads\/2026\/08\/image1-1536x667.png 1536w\" sizes=\"(max-width: 1816px) 100vw, 1816px\" \/><\/p>\n<h2>Einsatz von Proxys mit Puppeteer im gro\u00dfen Ma\u00dfstab: Best Practices f\u00fcr die Integration von Puppeteer-Proxys<\/h2>\n<p>Sobald Ihre grundlegende Proxy-Konfiguration funktioniert, k\u00f6nnen Sie damit fortfahren, Ihre Pipeline f\u00fcr die Produktion zu erweitern. Hier reicht ein einzelner statischer Proxy nicht aus. Sehen wir uns daher an, wie Sie einen rotierenden Proxy-Pool in Puppeteer einrichten.<\/p>\n<h3>Zuf\u00e4llige Rotation<\/h3>\n<p><strong>Installieren:<\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">bash<\/span><\/div>\n<pre style=\"margin: 0; padding: 16px 22px; overflow-x: auto;\"><code style=\"font-family: 'Fira Code',Consolas,monospace; font-size: 14px; line-height: 1.6; color: #50fa7b;\">npm install puppeteer<\/code><\/pre>\n<\/div>\n<p><strong>Einrichtung:  <\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">JavaScript<\/span><\/div>\n<pre style=\"margin: 0; padding: 18px 24px; overflow-x: auto; font-family: 'Fira Code',Consolas,monospace; font-size: 14px; line-height: 1.65; color: #f8f8f2;\"><code><span style=\"color: #ff79c6;\">const<\/span> puppeteer = <span style=\"color: #8be9fd;\">require<\/span>(<span style=\"color: #f1fa8c;\">'puppeteer'<\/span>);\n\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_PASS = <span style=\"color: #f1fa8c;\">'your_password'<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_SERVER = <span style=\"color: #f1fa8c;\">'geo.g-w.info:10080'<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_POOL = [\n    <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup01'<\/span>,\n    <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup02'<\/span>,\n    <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup03'<\/span>,\n    <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup04'<\/span>,\n];\n<span style=\"color: #ff79c6;\">const<\/span> getRandomProxy = () =&gt; PROXY_POOL[Math.<span style=\"color: #50fa7b;\">floor<\/span>(Math.<span style=\"color: #50fa7b;\">random<\/span>() * PROXY_POOL.length)];\n\n<span style=\"color: #ff79c6;\">const<\/span> urls = [\n    <span style=\"color: #f1fa8c;\">'https:\/\/httpbin.org\/ip'<\/span>,\n    <span style=\"color: #f1fa8c;\">'https:\/\/httpbin.org\/ip'<\/span>,\n    <span style=\"color: #f1fa8c;\">'https:\/\/httpbin.org\/ip'<\/span>,\n];\n\n(<span style=\"color: #ff79c6;\">async<\/span> () =&gt; {\n    <span style=\"color: #ff79c6;\">for<\/span> (<span style=\"color: #ff79c6;\">const<\/span> url <span style=\"color: #ff79c6;\">of<\/span> urls) {\n        <span style=\"color: #ff79c6;\">const<\/span> PROXY_USER = <span style=\"color: #50fa7b;\">getRandomProxy<\/span>();\n\n        <span style=\"color: #ff79c6;\">const<\/span> browser = <span style=\"color: #ff79c6;\">await<\/span> puppeteer.<span style=\"color: #50fa7b;\">launch<\/span>({\n            args: [<span style=\"color: #f1fa8c;\">`--proxy-server=${<\/span>PROXY_SERVER<span style=\"color: #f1fa8c;\">}`<\/span>]\n        });\n\n        <span style=\"color: #ff79c6;\">const<\/span> page = <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">newPage<\/span>();\n\n        <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">authenticate<\/span>({\n            username: PROXY_USER,\n            password: PROXY_PASS\n        });\n\n        <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">goto<\/span>(url);\n        <span style=\"color: #ff79c6;\">const<\/span> content = <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">content<\/span>();\n        console.<span style=\"color: #50fa7b;\">log<\/span>(<span style=\"color: #f1fa8c;\">`Request via ${<\/span>PROXY_USER<span style=\"color: #f1fa8c;\">}:`<\/span>, content);\n\n        <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">close<\/span>();\n    }\n})();<\/code><\/pre>\n<\/div>\n<p>Wie Sie sehen k\u00f6nnen, besteht der Hauptunterschied darin, dass wir anstelle von \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">PROXY_USER<\/code> \u201c nun \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">PROXY_POOL<\/code> \u201c verwenden. Gleichzeitig f\u00fcgen wir \u00fcber \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #7c3aed; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">Math.floor(Math.random() * PROXY_POOL.length)<\/code> \u201c eine Logik f\u00fcr die zuf\u00e4llige Rotation hinzu.<\/p>\n<h3>Sequentielle Drehung<\/h3>\n<p><strong>Installieren:<\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">bash<\/span><\/div>\n<pre style=\"margin: 0; padding: 16px 22px; overflow-x: auto;\"><code style=\"font-family: 'Fira Code',Consolas,monospace; font-size: 14px; line-height: 1.6; color: #50fa7b;\">npm install puppeteer<\/code><\/pre>\n<\/div>\n<p><strong>Einrichtung:  <\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">JavaScript<\/span><\/div>\n<pre style=\"margin: 0; padding: 18px 24px; overflow-x: auto; font-family: 'Fira Code',Consolas,monospace; font-size: 14px; line-height: 1.65; color: #f8f8f2;\"><code><span style=\"color: #ff79c6;\">const<\/span> puppeteer = <span style=\"color: #8be9fd;\">require<\/span>(<span style=\"color: #f1fa8c;\">'puppeteer'<\/span>);\n\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_PASS = <span style=\"color: #f1fa8c;\">'your_password'<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_SERVER = <span style=\"color: #f1fa8c;\">'geo.g-w.info:10080'<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_POOL = [\n    <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup01'<\/span>,\n    <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup02'<\/span>,\n    <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup03'<\/span>,\n    <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup04'<\/span>,\n];\n\n<span style=\"color: #ff79c6;\">let<\/span> proxyIndex = <span style=\"color: #bd93f9;\">0<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> getNextProxy = () =&gt; {\n    <span style=\"color: #ff79c6;\">const<\/span> proxy = PROXY_POOL[proxyIndex % PROXY_POOL.length];\n    proxyIndex++;\n    <span style=\"color: #ff79c6;\">return<\/span> proxy;\n};\n\n<span style=\"color: #ff79c6;\">const<\/span> urls = [\n    <span style=\"color: #f1fa8c;\">'https:\/\/httpbin.org\/ip'<\/span>,\n    <span style=\"color: #f1fa8c;\">'https:\/\/httpbin.org\/ip'<\/span>,\n    <span style=\"color: #f1fa8c;\">'https:\/\/httpbin.org\/ip'<\/span>,\n];\n\n(<span style=\"color: #ff79c6;\">async<\/span> () =&gt; {\n    <span style=\"color: #ff79c6;\">for<\/span> (<span style=\"color: #ff79c6;\">const<\/span> url <span style=\"color: #ff79c6;\">of<\/span> urls) {\n        <span style=\"color: #ff79c6;\">const<\/span> PROXY_USER = <span style=\"color: #50fa7b;\">getNextProxy<\/span>();\n\n        <span style=\"color: #ff79c6;\">const<\/span> browser = <span style=\"color: #ff79c6;\">await<\/span> puppeteer.<span style=\"color: #50fa7b;\">launch<\/span>({\n            args: [<span style=\"color: #f1fa8c;\">`--proxy-server=${<\/span>PROXY_SERVER<span style=\"color: #f1fa8c;\">}`<\/span>]\n        });\n\n        <span style=\"color: #ff79c6;\">const<\/span> page = <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">newPage<\/span>();\n\n        <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">authenticate<\/span>({\n            username: PROXY_USER,\n            password: PROXY_PASS\n        });\n\n        <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">goto<\/span>(url);\n        <span style=\"color: #ff79c6;\">const<\/span> content = <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">content<\/span>();\n        console.<span style=\"color: #50fa7b;\">log<\/span>(<span style=\"color: #f1fa8c;\">`Request via ${<\/span>PROXY_USER<span style=\"color: #f1fa8c;\">}:`<\/span>, content);\n\n        <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">close<\/span>();\n    }\n})();<\/code><\/pre>\n<\/div>\n<p>Hier verwenden wir eine Funktion \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #7c3aed; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">getNextProxy()<\/code> \u201c, die einen Z\u00e4hler \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">proxyIndex<\/code> \u201c mit einem Modulo-Operator (<code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #7c3aed; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">%<\/code>) nutzt, um den Pool der Reihe nach zu durchlaufen.<\/p>\n<h2>Puppeteer SOCKS-Proxy: Was Sie wissen m\u00fcssen<\/h2>\n<p>das SOCKS-Protokoll (Socket Secure) sowie  <a href=\"https:\/\/floppydata.com\/proxy-type\/socks5-proxy\/\">SOCKS5-Proxys<\/a>  Insbesondere arbeiten sie auf einer niedrigeren Netzwerkebene als HTTP\/HTTPS-Proxys. Was sie von anderen Protokollen unterscheidet, ist die F\u00e4higkeit, jede Art von Datenverkehr zu verarbeiten \u2013 vom normalen Surfen im Internet \u00fcber E-Mails und Datei\u00fcbertragungen bis hin zu P2P-Verbindungen und Echtzeit-Datenstr\u00f6men. Dies wird dadurch erm\u00f6glicht, dass das SOCKS-Protokoll Ihren Datenverkehr nicht wie HTTP-Proxys interpretiert oder filtert, sondern TCP- und UDP-Pakete einfach unver\u00e4ndert weiterleitet. Dar\u00fcber hinaus bieten SOCKS5-Proxys das h\u00f6chste Verschl\u00fcsselungsniveau, das die Proxy-Ebene selbst bereitstellen kann.<\/p>\n<p>Im Zusammenhang mit Puppeteer bieten SOCKS5-Proxys einige deutliche Vorteile. Die Low-Level-Paketweiterleitung sorgt f\u00fcr weniger Fehler und eine geringere Latenz bei hoher Auslastung, was bei der Ausf\u00fchrung gro\u00df angelegter Scraping-Pipelines von gro\u00dfem Nutzen ist. Da Puppeteer \u00fcber das normale Surfen im Internet hinaus eine Vielzahl von Aufgaben bew\u00e4ltigen kann \u2013 darunter die Verarbeitung von Medien, WebSocket-Verbindungen und Nicht-HTTP-Datenverkehr \u2013, sind SOCKS5-Proxys die ideale Wahl, da sie mehrere Protokolle verarbeiten k\u00f6nnen und nicht allein auf den Webdatenverkehr beschr\u00e4nkt sind.<\/p>\n<p>Allerdings gibt es einen Haken. Die Engine von Puppeteer, Chromium, unterst\u00fctzt die SOCKS5-Proxy-Authentifizierung, die von den meisten kommerziellen Proxys \u2013 einschlie\u00dflich Floppydata \u2013 verlangt wird, nicht von Haus aus. Der Versuch, die \u00fcbliche Methode \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #7c3aed; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">page.authenticate<\/code> \u201c zu verwenden, f\u00fchrt h\u00f6chstwahrscheinlich zu der Fehlermeldung \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">ERR_NO_SUPPORTED_PROXIES<\/code> \u201c oder dazu, dass der Browser auf eine direkte Verbindung zur\u00fcckgreift, wodurch Ihre echte IP-Adresse offengelegt wird.<\/p>\n<p>Dennoch lassen sich SOCKS5-IP-Adressen in Ihr Puppeteer-Skript integrieren und \u00fcber die Methode \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">proxy-chain<\/code> \u201c authentifizieren. \u201e <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">proxy-chain<\/code> \u201c funktioniert hier, da es einen lokalen HTTP-Tunnel aufbaut, der die SOCKS5-Authentifizierung f\u00fcr Sie \u00fcbernimmt; Chromium muss sich nie direkt damit befassen. Die Einrichtung sieht in diesem Fall etwas anders aus:<\/p>\n<p><strong>Installieren:<\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">bash<\/span><\/div>\n<pre style=\"margin: 0; padding: 16px 22px; overflow-x: auto;\"><code style=\"font-family: 'Fira Code',Consolas,monospace; font-size: 14px; line-height: 1.6; color: #50fa7b;\">npm install proxy-chain<\/code><\/pre>\n<\/div>\n<p><strong>Einrichtung:  <\/strong><\/p>\n<div style=\"background: #282a36; border-radius: 10px; overflow: hidden; margin: 16px 0 24px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);\">\n<div style=\"background: #1e1f29; padding: 10px 18px; display: flex; align-items: center; gap: 7px;\"><span style=\"color: #6272a4; font-family: 'Fira Code',Consolas,monospace; font-size: 12px; margin-left: 10px;\">JavaScript<\/span><\/div>\n<pre style=\"margin: 0; padding: 18px 24px; overflow-x: auto; font-family: 'Fira Code',Consolas,monospace; font-size: 14px; line-height: 1.65; color: #f8f8f2;\"><code><span style=\"color: #ff79c6;\">const<\/span> puppeteer = <span style=\"color: #8be9fd;\">require<\/span>(<span style=\"color: #f1fa8c;\">'puppeteer'<\/span>);\n<span style=\"color: #ff79c6;\">const<\/span> proxyChain = <span style=\"color: #8be9fd;\">require<\/span>(<span style=\"color: #f1fa8c;\">'proxy-chain'<\/span>);\n\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_USER = <span style=\"color: #f1fa8c;\">'user123-type-residential-country-US-session-pup01'<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_PASS = <span style=\"color: #f1fa8c;\">'your_password'<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_HOST = <span style=\"color: #f1fa8c;\">'geo.g-w.info'<\/span>;\n<span style=\"color: #ff79c6;\">const<\/span> PROXY_PORT = <span style=\"color: #f1fa8c;\">'10800'<\/span>;\n\n(<span style=\"color: #ff79c6;\">async<\/span> () =&gt; {\n    <span style=\"color: #ff79c6;\">const<\/span> proxy = <span style=\"color: #f1fa8c;\">`socks5:\/\/${<\/span>PROXY_USER<span style=\"color: #f1fa8c;\">}:${<\/span>PROXY_PASS<span style=\"color: #f1fa8c;\">}@${<\/span>PROXY_HOST<span style=\"color: #f1fa8c;\">}:${<\/span>PROXY_PORT<span style=\"color: #f1fa8c;\">}`<\/span>;\n\n    <span style=\"color: #ff79c6;\">const<\/span> anonymizedProxy = <span style=\"color: #ff79c6;\">await<\/span> proxyChain.<span style=\"color: #50fa7b;\">anonymizeProxy<\/span>(proxy);\n\n    <span style=\"color: #ff79c6;\">const<\/span> browser = <span style=\"color: #ff79c6;\">await<\/span> puppeteer.<span style=\"color: #50fa7b;\">launch<\/span>({\n        args: [<span style=\"color: #f1fa8c;\">`--proxy-server=${<\/span>anonymizedProxy<span style=\"color: #f1fa8c;\">}`<\/span>],\n    });\n\n    <span style=\"color: #ff79c6;\">const<\/span> page = <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">newPage<\/span>();\n    <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">goto<\/span>(<span style=\"color: #f1fa8c;\">'https:\/\/httpbin.org\/ip'<\/span>);\n    <span style=\"color: #ff79c6;\">const<\/span> content = <span style=\"color: #ff79c6;\">await<\/span> page.<span style=\"color: #50fa7b;\">content<\/span>();\n    console.<span style=\"color: #50fa7b;\">log<\/span>(content);\n\n    <span style=\"color: #ff79c6;\">await<\/span> browser.<span style=\"color: #50fa7b;\">close<\/span>();\n    <span style=\"color: #ff79c6;\">await<\/span> proxyChain.<span style=\"color: #50fa7b;\">closeAnonymizedProxy<\/span>(anonymizedProxy, <span style=\"color: #bd93f9;\">true<\/span>);\n})();<\/code><\/pre>\n<\/div>\n<p>Bitte beachten Sie, dass sich in diesem Fall <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">PROXY_PORT<\/code> f\u00fcr das SOCKS5-Protokoll in 10800 \u00e4ndert und die Proxy-Adresse selbst mit <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">socks5:\/\/<\/code> beginnt, nicht mit <code style=\"font-family: &#39;Fira Code&#39;,Consolas,monospace; background: #f4f4f5; color: #b45309; padding: 2px 6px; border-radius: 4px; font-size: 0.9em;\">http:\/\/<\/code>.<\/p>\n<h2>Fazit<\/h2>\n<p>Proxys sind ein wesentlicher Bestandteil jeder seri\u00f6sen Puppeteer-Automatisierungsumgebung. In diesem Leitfaden haben wir die wichtigsten Gr\u00fcnde f\u00fcr deren Einsatz erl\u00e4utert, sie mit VPNs verglichen und alle wesentlichen Integrationsmethoden durchgesprochen \u2013 von der Basisauthentifizierung \u00fcber rotierende Pools bis hin zur SOCKS5-Konfiguration mit Proxy-Chain. Mit einem zuverl\u00e4ssigen Anbieter wie Floppydata und der richtigen Konfiguration f\u00fcr Ihren Anwendungsfall verf\u00fcgen Sie \u00fcber eine ausfallsichere, skalierbare Pipeline, die alle Anforderungen Ihres Workflows bew\u00e4ltigen kann.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Puppeteer ist eine der beliebtesten Node.js-Bibliotheken und ein leistungsstarkes Tool f\u00fcr automatisierte Aufgaben wie Web-Scraping, Tests, SEO-Recherchen oder Preis\u00fcberwachung \u00fcber Chrome- oder Chromium-Browser. Wenn Sie schon einmal mit automatisierten Workflows in gro\u00dfem Ma\u00dfstab gearbeitet haben, kennen Sie das Problem bereits: Websites begrenzen die Zugriffsrate, drosseln Ihre Verbindung, blockieren Anfragen sofort oder setzen Ihre IP-Adresse sogar [&hellip;]<\/p>\n","protected":false},"author":20,"featured_media":47295,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[440,489],"tags":[],"class_list":["post-47424","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","category-how-to"],"acf":[],"_links":{"self":[{"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/posts\/47424","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/users\/20"}],"replies":[{"embeddable":true,"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/comments?post=47424"}],"version-history":[{"count":0,"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/posts\/47424\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/media\/47295"}],"wp:attachment":[{"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/media?parent=47424"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/categories?post=47424"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/floppydata.com\/de\/wp-json\/wp\/v2\/tags?post=47424"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}