Wie man pip mit Proxys verwendet

Richte Proxys mit pip ein, um Beschränkungen zu umgehen, die Sicherheit zu verbessern und die Paketverwaltung zu optimieren.
10 min lesen
How to Use Pip with Proxies blog image

In diesem Artikel erfährst du, wie du Proxys mit pip konfigurierst und verwendest, um Paketverwaltung in eingeschränkten Netzwerken nahtlos zu ermöglichen.

Unterschiede zwischen öffentlichen und privaten Proxys

Bei der Auswahl eines Proxys ist es wichtig zu bestimmen, ob dieser öffentlich oder privat sein soll.

Öffentliche Proxys

Öffentliche Proxys stehen jedem zur Nutzung offen und verfügen oft über keine Authentifizierung. Sie bieten zwar schnellen Zugriff auf eine IP-Adresse, haben aber Nachteile – langsamere Geschwindigkeiten, instabile Verbindungen und mögliche IP-Sperren. Da sie kostenlos und weit verbreitet sind, fehlen ihnen oft wichtige Funktionen wie Proxy-Rotationen, Caching und Zugriffskontrolle, was sie in einer Produktionsumgebung unzuverlässig macht.

Eine öffentliche URL könnte etwa so formatiert sein: https://proxyserver:port.

Private Proxys

Private Proxys erfordern eine Authentifizierung und bieten mehr Sicherheit, Stabilität und erweiterte Funktionen – allerdings in der Regel gegen Bezahlung. Sie bieten eine sichere, schnelle und zuverlässige Verbindung zu einer dedizierten IP-Adresse sowie Funktionen wie Proxy-Authentifizierung und -Rotation.

Der Zugriff wird in der Regel über eine Authentifizierung gesteuert, oft indem ein Benutzername und Passwort als Präfix zur Proxy-URL hinzugefügt wird, etwa so: https://username:password@proxyserver:port.

Proxys mit pip verwenden

Um einen Proxy mit pip zu verwenden, musst du zunächst einige Details zu deinem Proxy zusammentragen. Das nächste Beispiel verwendet einen öffentlichen Proxy mit folgenden Details:

  • Eine Proxy-Adresse für den Proxy-Dienst
  • Den Port, den der Proxy-Dienst für die Kommunikation benötigt

Das folgende proxy-list Repo bietet täglich getestete öffentliche Proxy-Adressen, die für Tests nützlich sein können, aber nicht in Produktionsumgebungen verwendet werden sollten.

Überprüfe im proxy-list Repo die proxy-list-status.txt Datei, um einen funktionierenden öffentlichen Proxy zu finden. Dies kannst du tun, indem du die Datei nach einer Adresse durchsuchst, die neben sich ein success Flag hat, was bedeutet, dass sie funktioniert:

Auswahl eines öffentlichen Proxys

Für dieses Tutorial verwende 45.185.162.203:999 als deine öffentliche Proxy-Adresse. Das bedeutet, die Proxy-Server-Adresse lautet http://45.185.162.203:999.

Einen pip-Proxy über die Kommandozeile konfigurieren

Der schnellste Weg, einen pip-Proxy zu konfigurieren, besteht darin, die Adresse beim Aufruf des pip install Befehls mit der --proxy Kommandozeilenoption zu übergeben.

Teste mit der öffentlichen Proxy-Adresse deinen Zugriff auf den Proxy und die Pakete mit folgendem Befehl:

  # Public Proxy
pip install boto3 --proxy http://45.185.162.203:999

Diese Methode ist hilfreich, um Proxys schnell zu testen und zu validieren, bevor ein neuer Proxy dauerhaft konfiguriert wird. Beim Veröffentlichen von pip-Paketen hilft sie, die Verfügbarkeit von einer anderen IP aus zu überprüfen.

Einen pip-Proxy mit der pip-Konfigurationsdatei konfigurieren

Um einen pip-Proxy dauerhaft zu konfigurieren, ist die pip-Konfigurationsdatei eine einfache und deklarative Lösung. Ihr Speicherort hängt von deinem Betriebssystem ab und befindet sich in folgenden Verzeichnissen:

  • Global: Systemweite Konfigurationsdatei, von allen Benutzern gemeinsam genutzt.
  • Benutzer: Benutzerspezifische Konfigurationsdatei für den Benutzer, der den pip-Prozess ausführt.
  • Site: Umgebungsspezifische Konfigurationsdatei bei Verwendung von Python-Virtual-Environments.

Diese Konfigurationsdateien können an folgenden Orten für jedes System gefunden oder erstellt werden:

Linux/macOS

Auf Linux-basierten Systemen heißt die pip-Konfigurationsdatei pip.conf und befindet sich an folgenden Orten:

  • Global:
    • Debian-basierte Systeme: Bearbeite oder erstelle pip.conf im/etc` Verzeichnis.
    • macOS-basierte Systeme: Bearbeite oder erstelle /Library/Application Support/pip/pip.conf.
  • Benutzer:
    • Debian-basierte Systeme: Bearbeite oder erstelle die ~/pip/pip.conf Datei.
    • macOS-basierte Systeme: Bearbeite oder erstelle die ~/.config/pip/pip.conf Konfigurationsdatei.
  • Site: Bei Verwendung in einer Python-Virtual-Environment befindet sie sich unter $VIRTUAL_ENV/pip.conf.

Windows

Auf einem Windows-System ist die Datei eine pip.ini Datei und befindet sich an folgenden Orten:

  • Global: Bearbeite oder erstelle die C:ProgramDatapippip.ini Datei. Beachte, dass diese Datei auf Windows-Systemen standardmäßig versteckt, aber beschreibbar ist.
  • Benutzer: Bearbeite oder erstelle pip.ini in %APPDATA%pip.
  • Site: Bei Verwendung in einer Python-Virtual-Environment bearbeite oder erstelle die Konfigurationsdatei unter %VIRTUAL_ENV%pip.ini.

Hinweis: Anstatt eine Liste bekannter Orte zu durchsuchen, kannst du pip bitten, die gültigen Orte aufzulisten:

  pip config -v list

Inhalt der Konfigurationsdatei

Für dieses Beispiel wird eine pip-Konfigurationsdatei für eine Python-Virtual-Environment verwendet. In einer aktivierten Virtual-Environment bearbeite $VIRTUAL_ENV/pip.conf auf Debian-basierten Systemen oder %VIRTUAL_ENV%pip.ini auf Windows.

In der Konfigurationsdatei musst du den proxy Schlüssel mit deinem gewünschten HTTP- oder HTTPS-Proxy aktualisieren:

  [global]
proxy = http://45.185.162.203:999

Sobald die Datei gespeichert ist, wird der Proxy automatisch mit jedem pip-Befehl verwendet, wodurch sich der zuvor erwähnte Proxy-Flag erübrigt:

  (venv) $ pip install boto3

Weitere Details zu den verfügbaren Konfigurationsoptionen in der pip-Konfigurationsdatei findest du in der Projektdokumentation.

Einen pip-Proxy mit Umgebungsvariablen konfigurieren

Das Setzen von System-Umgebungsvariablen stellt sicher, dass ein Proxy für pip und alle anderen HTTP-Anfragen auf einem System verwendet wird. Dies geschieht durch die Verwendung sowohl der HTTP_PROXY als auch der HTTPS_PROXY Umgebungsvariablen, auf die Software wie pip häufig als System-Proxy für HTTP-Anfragen zugreift.

Linux/macOS

Wenn du ein Linux-Betriebssystem verwendest, aktualisiere die /etc/environment Datei, oder wenn du macOS-Benutzer bist, aktualisiere die .zshrc Datei im Home-Verzeichnis. Aktualisiere sie dann mit neuen Einträgen für deinen Proxy-Server:

  HTTP_PROXY=https://proxyserver:port
HTTPS_PROXY=https://proxyserver:port

Sobald du deine Terminal-Sitzungen neu startest oder dein System neu startest, sind die Umgebungsvariablen vorhanden.

Windows

Auf einem Windows-System kannst du Umgebungsvariablen mit folgenden Befehlen in einem Eingabeaufforderungsterminal setzen:

  $env:HTTP_PROXY "https://proxyserver:port" /M
$env:HTTPS_PROXY "https://proxyserver:port" /M

Starte die Eingabeaufforderung neu, damit die Änderungen wirksam werden.

Die Konfiguration testen

Sobald du eine systemweite Konfiguration entweder über die pip-Konfigurationsdatei oder Umgebungsvariablen aktiviert hast, solltest du testen, ob der Proxy erfolgreich eine Verbindung herstellen und Daten über den Proxy empfangen kann.

Linux/macOS

Verwende unter Linux/macOS folgenden Befehl:

  $ python -m venv venv
$ source venve/scripts/activate

# for pip config file or environment variables
(venv) $ pip install requests

Falls du diese Einstellungen jemals mit einem spezifischen Proxy überschreiben möchtest, kannst du auf die CLI-Flags zurückgreifen:

  # pip cli flag
(venv) $ pip install requests --proxy https://proxyserver:port

Stelle bei diesem Befehl sicher, dass du https://proxyserver:port mit deinem eigenen Proxy aktualisierst.

Windows

Verwende unter Windows folgenden Befehl:

  > python -m venv venv
> .venvScriptsActivate.bat
(venv) > pip install requests

Diese Einstellungen können jederzeit mit den pip-CLI-Flags überschrieben werden:

  # pip cli flag
(venv) $ pip install requests --proxy https://proxyserver:port

Fehlerbehebung bei pip-Proxys

Beim Verbinden mit einem HTTP- oder HTTPS-Proxy mit pip können dir folgende häufige Probleme begegnen, insbesondere wenn du private Proxys oder HTTPS-Proxys wegen ihrer erweiterten Funktionen nutzt.

Authentifizierungsprobleme

Authentifizierungsprobleme äußern sich häufig als 407 Proxy Authentication Required Fehler beim Versuch, sich mit pip mit dem Proxy zu verbinden. Dies zeigt an, dass der Proxy einen Benutzernamen und ein Passwort für die Verbindung benötigt oder dass du falsche Anmeldedaten für den Proxy angegeben hast.

Zertifikatsprobleme

Beim Verbinden mit einem HTTPS-Proxy kann von pip ein Certificate verify failed Fehler ausgegeben werden. Dies zeigt an, dass es ein Problem mit dem vom Proxy-Server bereitgestellten Zertifikat gibt.

Wenn dein privater Proxy-Server ein selbstsigniertes Zertifikat verwendet, kann dieser Fehler auftreten, da das Zertifikat nicht von einer Zertifizierungsstelle verifiziert werden kann. Du kannst die --trusted-host CLI-Option verwenden, wenn du dich mit bestimmten Domains verbindest, um Fehler bei selbstsignierten Zertifikaten zu ignorieren.

pip mit rotierenden Proxys verwenden

Rotierende Proxys helfen, IP-Sperren zu vermeiden, indem sie die IP-Adressen für jede Anfrage automatisch wechseln. Dies simuliert mehrere Benutzer und umgeht Einschränkungen.

Du kannst dies umsetzen, indem du zufällig Proxys aus einer Liste auswählst. Unten ist ein einfaches Bash-Skript, das pip-Pakete installiert und dabei durch öffentliche Proxys rotiert.

Erstelle folgendes Bash-Skript namens rotate-proxies.sh:

  proxy_list=(
  'http://45.185.162.203:999'
  'http://177.23.176.58:8080'
  'http://83.143.24.66:80'
)

pip_packages=(
  'requests'
  'numpy'
  'pandas'
)
chmod +x rotate-proxies.sh
# Loop through packages and install them
for package in "${pip_packages[@]}"
do
  # Randomly select a proxy from the list
  proxy=${proxy_list[$RANDOM % ${#proxy_list[@]}]}
  echo -e  "nInstalling $package with proxy $proxy"
  pip install --proxy $proxy $package
done

Nach der Erstellung kannst du die Datei ausführen, um die pip-Pakete herunterzuladen und für jeden pip-Befehl durch einen zufälligen Proxy zu rotieren. Hier ist eine Zusammenfassung der Skriptausgabe:

  $ ./rotate-proxies.sh 

Installing requests with proxy http://177.23.176.58:8080
Collecting requests
  Downloading requests-2.32.3-py3-none-any.whl.metadata (4.6 kB)

….

Downloading urllib3-2.3.0-py3-none-any.whl (128 kB)
Installing collected packages: urllib3, idna, charset-normalizer, certifi, requests
Successfully installed certifi-2026.1.31 charset-normalizer-3.4.1 idna-3.10 requests-2.32.3 urllib3-2.3.0

Installing six with proxy http://45.185.162.203:999
Collecting numpy
 Downloading numpy-2.2.2-cp313-cp313-macosx_14_0_x86_64.whl.metadata (62 kB)

…

Installing collected packages: numpy
Successfully installed numpy-2.2.2

Installing pandas with proxy http://83.143.24.66:80
Collecting pandas
  Downloading pandas-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl.metadata (89 kB)

….

Installing collected packages: pytz, tzdata, six, python-dateutil, pandas
Successfully installed pandas-2.2.3 python-dateutil-2.9.0.post0 pytz-2026.1 six-1.17.0 tzdata-2026.1

Vorteile der Verwendung von Proxys mit pip

Proxys helfen Entwicklern, Netzwerkbeschränkungen zu umgehen, blockierte Ressourcen zuzugreifen und die Geschwindigkeit von Paket-Downloads zu verbessern. Private Proxys bieten Caching, schnellere Verbindungen und erhöhte Sicherheit, indem sie deine Identität maskieren.

Im Vergleich zu einem VPN sind Proxys eine leichtgewichtige Alternative für pip-Anfragen. Während ein VPN den gesamten Internetverkehr für mehr Privatsphäre verschlüsselt, kann es die Paketinstallation durch erhöhte Latenz verlangsamen. Proxys bieten eine schnellere, effizientere Lösung für die Verwaltung von Abhängigkeiten.

Häufige Fehler und bewährte Praktiken

Bei der Verwendung von Proxys mit pip ist es wichtig, auf häufige Fehler zu achten, da sie zu Sicherheitslücken führen können. Fehler wie falsche Proxy-URLs oder fehlerhaft konfigurierte URL-Formate – zum Beispiel ein fehlendes oder falsches HTTP- oder HTTPS-Protokoll – können Verbindungen zu Paketrepositories stören.

Ein häufiges Sicherheitsproblem ist das Hardcodieren von Proxy-Anmeldedaten (z.B. Benutzername und Passwort) in Quellcode, Skripten oder Continuous-Integration-, Continuous-Delivery-Pipeline-Definitionen (CI/CD). Wenn dieser Code weiterverteilt wird, kann unbefugter Zugriff auf den Proxy erfolgen. Wenn Anmeldedaten kompromittiert werden, kann der Proxy missbraucht werden, was zu erhöhten Kosten oder sogar zu Cyberangriffen führen kann.

Um diese Fehler zu vermeiden, wird empfohlen, Proxy-Anmeldedaten sicher aufzubewahren, indem sie in Umgebungsvariablen oder verschlüsselten Konfigurationsdateien gespeichert werden, anstatt direkt im Code. Zusätzlich musst du die Proxy-Konnektivität testen, bevor du pip verwendest, um eine ordnungsgemäße Einrichtung sicherzustellen und Laufzeitfehler zu vermeiden. Mit Tools wie curl oder ping kannst du die Proxy-Leistung überprüfen, bevor du ihn in Betrieb nimmst. Dies ermöglicht eine reibungslosere Paketverwaltung.

Bright Data Proxys verwenden

Wenn du nach einem Anbieter hochwertiger und funktionsreicher Proxys suchst, schau dir Bright Data an. Es ist eine Proxy-Lösung, die eine Reihe von IP-Adressen bereitstellt, einschließlich Residential-, Rechenzentrums- und Mobilgeräte-IPs. Es bietet außerdem spezialisierte Tools für die Datenerfassung und das Web-Scraping, einschließlich rotierender Proxys und der Web Unlocker API.

Bright Data hilft dir, Proxys ganz einfach für die Bedürfnisse deines Projekts zu erstellen. Um dir zu zeigen, wie einfach das ist, erstellen wir einen privaten Residential-Proxy, den du mit pip verwenden kannst, um über eine andere IP-Adresse auf Pakete zuzugreifen.

Beginne, indem du dich bei Bright Data registrierst. Navigiere dann zum Benutzer-Dashboard.

Klicke im Seitenmenü auf Proxys & Scraping:

Bright Data Proxys

Sobald das Formular geladen ist, konfiguriere einen neuen Residential-Proxy. Wenn du die Standardeinstellungen verwendest, erhältst du einen Proxy mit einer Shared-IP-Adresse, die von mehreren Bright-Data-Nutzern verwendet wird:

Erstellen eines Residential-Proxys

Wenn du eine bestimmte Region anvisierst, kannst du auch das Land angeben, in dem sich die IP-Adresse befinden soll.

Nach der Erstellung wirst du zu einem Dashboard weitergeleitet, das die Endpunkt- und Authentifizierungsdetails für deinen neu erstellten Proxy enthält. Notiere dir sowohl Benutzername, Passwort als auch Server-Adresse:

Proxy-Dashboard

Teste mit diesen Endpunktwerten ihre Verfügbarkeit mit dem --proxy Flag:

  $ pip install pandas 
    --trusted-host pypi.org 
    --trusted-host files.pythonhosted.org 
    --proxy https://username:[email protected]:33335

Da der Bright-Data-Proxy ein selbstsigniertes Zertifikat verwendet, kannst du das trusted-host Flag verwenden, um pypi.org und files.pythonhosted.org als vertrauenswürdige Domains zuzulassen.

Fazit

Die Verwendung eines Proxys mit pip hilft, Anonymität und Kontrolle zu erhöhen, sodass du IP-Beschränkungen und Geoblocking umgehen kannst. Je nach deinen Bedürfnissen kannst du zwischen öffentlichen und privaten Proxys wählen.

Private Proxys bieten Vorteile wie rotierende IPs, verbessertes Caching, schnellere Geschwindigkeiten und höhere Stabilität, aber die Kosten hängen von IP-Verfügbarkeit und geografischer Lage ab.

Das Konfigurieren eines Proxys für pip ist einfach, mit mehreren Optionen wie CLI-Flags, einer pip-Konfigurationsdatei und Umgebungsvariablen. Öffentliche Proxys haben jedoch Einschränkungen und sind, wie zuvor besprochen, nicht ideal für große Arbeitslasten oder den Produktionseinsatz. Für eine zuverlässigere Lösung bietet Bright Data Residential- und Datacenter-IPs, die schnelle, stabile Verbindungen und fortschrittliche Tools für Web-Scraping und Datenerfassung bieten.