Wie man kostenlose Proxys mit Selenium oder Puppeteer verwendet

Wie man kostenlose Proxys mit Selenium oder Puppeteer verwendet

Proxys in der Webautomatisierung verstehen

Proxys fungieren als die stillen Agenten des Internets, die Ihre IP-Adresse verschleiern und Ihnen ein unauffälliges Navigieren durch digitale Welten ermöglichen. Im Kontext der Webautomatisierung – wo Selenium und Puppeteer im Browser ihre Arbeit verrichten – sind Proxys unverzichtbar, um Ratenbegrenzungen, Geobeschränkungen und Überwachung zu umgehen. Kostenlose Proxys sind zwar unzuverlässig und kurzlebig, können aber für einfache, unkritische Web-Scraping- oder Testszenarien ausreichen.

Arten von Proxys und ihre Eigenschaften

Proxy-Typ Anonymitätsstufe Unterstützte Protokolle Typischer Anwendungsfall Zuverlässigkeit
HTTP Niedrig bis mittel HTTP, HTTPS Einfaches Web-Scraping Niedrig
SOCKS4/5 Hoch SOCKS4, SOCKS5 Komplexe Protokolle, HTTPS Medium
Transparent Keine (gibt IP-Adresse preis) HTTP, HTTPS Zwischenspeicherung, interne Verwendung Sehr niedrig
Elite/Anonym Hoch HTTP, HTTPS Umgehung von Geoblocks Medium

Eine Zusammenstellung kostenloser Proxy-Listen finden Sie hier: https://free-proxy-list.net/ oder https://www.sslproxies.org/.

Verwendung kostenloser Proxys mit Selenium (Python)

1. Installation der Abhängigkeiten

pip install selenium

Laden Sie die neueste Version herunter ChromeDriver kompatibel mit Ihrer Chrome-Version.

2. Konfigurieren eines Proxys in Selenium

Der Browser, diese digitale Marionette, kann folgendermaßen gesteuert werden:

from selenium import webdriver from selenium.webdriver.chrome.options import Options proxy = "186.121.235.66:8080" # Ersetzen Sie dies durch Ihre kostenlose Proxy-Adresse. options = Options() options.add_argument(f'--proxy-server=http://{proxy}') driver = webdriver.Chrome(options=options) driver.get('https://httpbin.org/ip') print(driver.page_source) driver.quit()

Tabelle: Häufig verwendete Chrome-Proxy-Einstellungen

Option Beschreibung
--proxy-server=http://IP:PORT HTTP-Proxy einrichten
--proxy-server=https=IP:PORT HTTPS-Proxy einrichten
--proxy-bypass-list=localhost;127.0.0.1 Adressen vom Proxy ausschließen

3. Verwendung von Proxys mit Authentifizierung

Kostenlose Proxys mit Authentifizierung sind seltene Perlen, aber falls Sie zufällig auf einen stoßen sollten:

from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options # Authenticated proxies require a Chrome extension workaround from selenium.webdriver.common.by import By import zipfile proxy_host = 'proxy.example.com' proxy_port = 8000 proxy_user = 'user' proxy_pass = 'pass' manifest_json = """ { "version": "1.0.0", "manifest_version": 2, "name": "Chrome Proxy", "permissions": [ "proxy", "tabs", "unlimitedStorage", "storage", " ", "webRequest", "webRequestBlocking" ], "background": { "scripts": ["background.js"] } } """ background_js = f""" var config = {{ mode: "fixed_servers", rules: {{ singleProxy: {{ scheme: "http", host: "{proxy_host}", port: parseInt({proxy_port}) }}, bypassList: ["localhost"] }} }}; chrome.proxy.settings.set({{value: config, scope: "regular"}}, function() {{}}); function callbackFn(details) {{ return {{ authCredentials: {{ username: "{proxy_user}", password: "{proxy_pass}" }} }}; }} chrome.webRequest.onAuthRequired.addListener( callbackFn, {{urls: [" "]}}, ['blocking'] ); """ # Erstellen Sie die Proxy-Erweiterung pluginfile = 'proxy_auth_plugin.zip' mit zipfile.ZipFile(pluginfile, 'w') as zp: zp.writestr("manifest.json", manifest_json) zp.writestr("background.js", background_js) chrome_options = Options() chrome_options.add_extension(pluginfile) driver = webdriver.Chrome(options=chrome_options) driver.get('https://httpbin.org/ip')

Referenz: Selenium-Proxy-Authentifizierung (Gist-Git)

Kostenlose Proxys mit Puppeteer verwenden (Node.js)

1. Puppeteer installieren

npm installiere Puppenspieler

2. Puppeteer mit einem Proxy starten

Der Browser soll seine neue Maske aufsetzen:

const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch({ args: ['--proxy-server=http://186.121.235.66:8080'] }); const page = await browser.newPage(); await page.goto('https://httpbin.org/ip'); const body = await page.content(); console.log(body); await browser.close(); })();

3. Umgang mit der Proxy-Authentifizierung

Wenn der Pförtner nach Zugangsdaten verlangt:

const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch({ args: ['--proxy-server=http://proxy.example.com:8000'] }); const page = await browser.newPage(); await page.authenticate({ username: 'user', password: 'pass' }); await page.goto('https://httpbin.org/ip'); const body = await page.content(); console.log(body); await browser.close(); })();

4. Rotierende Proxys in Puppeteer

Ein Ballett ephemerer Identitäten, folgendermaßen orchestriert:

const proxies = [ 'http://proxy1:port', 'http://proxy2:port', 'http://proxy3:port' ]; const puppeteer = require('puppeteer'); (async () => { for (const proxy of proxies) { const browser = await puppeteer.launch({ args: [`--proxy-server=${proxy}`] }); const page = await browser.newPage(); await page.goto('https://httpbin.org/ip'); const body = await page.content(); console.log(`Proxy: ${proxy}\n${body}\n`); await browser.close(); } })();

Kostenlose Proxy-Quellen

Name URL Merkmale
Kostenlose Proxy-Liste https://free-proxy-list.net/ Große HTTP/S-Liste, aktualisiert
SSL-Proxys https://www.sslproxies.org/ HTTPS-Proxys, schnelle Aktualisierung
ProxyScrape https://proxyscrape.com/free-proxy-list Mehrere Protokolle
Spys.one http://spys.one/en/ Erweiterte Filterung

Bewährte Verfahren und Einschränkungen

  • Vergängliche Natur: Kostenlose Proxys verschwinden oft spurlos; überwachen Sie ihre Verfügbarkeit mit Tools wie ProxyChecker.
  • Geschwindigkeit und Zuverlässigkeit: Rechnen Sie mit Verzögerungen, Timeouts und gelegentlichen Sackgassen.
  • Sicherheit: Verwenden Sie niemals kostenlose Proxys für sensible Konten – Man-in-the-Middle-Angriffe lauern im Verborgenen.
  • Rechtliche und ethische Überlegungen: Beachten Sie stets die robots.txt-Datei und die Nutzungsbedingungen.

Proxy-Validierungsbeispiel (Python)

Bevor Sie Ihren Browser starten, testen Sie den Proxy-Status:

import requests proxy = "186.121.235.66:8080" proxies = {"http": f"http://{proxy}", "https": f"http://{proxy}"} try: response = requests.get('https://httpbin.org/ip', proxies=proxies, timeout=5) print(response.json()) except Exception as e: print(f"Proxy failed: {e}")

Links zu Ressourcen

Théophile Beauvais

Théophile Beauvais

Proxy-Analyst

Théophile Beauvais ist ein 21-jähriger Proxy-Analyst bei ProxyMist, wo er sich auf die Pflege und Aktualisierung umfassender Listen von Proxy-Servern aus der ganzen Welt spezialisiert hat. Mit seiner angeborenen Begabung für Technologie und Cybersicherheit ist Théophile zu einem wichtigen Mitglied des Teams geworden und stellt sicher, dass Benutzern weltweit kostenlos zuverlässige SOCKS-, HTTP-, Elite- und anonyme Proxy-Server zur Verfügung gestellt werden. Théophile wurde in der malerischen Stadt Lyon geboren und wuchs dort auf. Seine Leidenschaft für digitale Privatsphäre und Innovation wurde schon in jungen Jahren geweckt.

Kommentare (0)

Hier gibt es noch keine Kommentare, Sie können der Erste sein!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert