Kurz gesagt sind Proxies Server, die als äußere Schicht dienen und eine Verbindung zu Netzwerkdiensten herstellen. Sie dienen als Vermittler zwischen einem Computer und der Website, von der ein Nutzer Informationen abrufen möchte. Die Anfrage des Nutzers wird nicht direkt an die betreffende Website weitergeleitet, sondern zunächst an den Proxy, der sie dann an den Endserver weiterleitet. Die IP-Adresse des Proxy-Servers ist also diejenige, die die Website speichert, und nicht die des Nutzers.
Warum also einen Proxy verwenden?
Zum Beispiel, wenn es notwendig ist, Informationen von einer Website zu sammeln, ohne Angst vor Einschränkungen oder Sperren zu haben. Ein Proxy hilft dabei, die IP-Adresse des echten Nutzers zu verschleiern und seine wahre digitale Identität zu ändern.
Es kann ein Proxy aus einem bestimmten Land verwendet werden, in dem es keine Einschränkungen gibt. Dies liegt daran, dass in bestimmten Ländern der Zugang zu einigen Programmen und Websites eingeschränkt oder gesperrt ist.
Wenn eine große Anzahl von Anfragen an eine bestimmte Website gesendet wird, besteht die Gefahr, dass das System überlastet wird. Folglich besteht ein großes Risiko, blockiert zu werden. Die gleichzeitige Verwendung mehrerer Proxys ermöglicht es den Nutzern, die Anfragen an eine bestimmte Website gleichmäßig zu verteilen und so eine Blockierung zu vermeiden.
Requests ist die Bibliothek zum Senden von HTTP-Anfragen mit Python. Sie macht es einfach, GET- und POST-Anfragen zu stellen. Die Verwendung von Python Requests ohne Proxy kann HTTP-Anfragen senden, bietet aber keine Anonymität und umgeht keine Einschränkungen.
Um Requests zu installieren, geben Sie einfach den folgenden Befehl in das Terminal ein:
pip install requests
Um zu überprüfen, ob die erforderliche Bibliothek richtig eingerichtet ist, müssen Sie die Python-Entwicklungsumgebung öffnen und den Befehl ausführen:
import requests
print(requests.__version__)
Wenn alles richtig gemacht wurde, wird das Skript die Versionsnummer zurückgeben.
Nach der Installation der Request-Bibliothek können wir mit der Ausführung von HTTP-Anfragen beginnen. Um einen Proxy einzubinden, müssen jedoch bestimmte Konfigurationen in Python vorgenommen werden.
Untersuchen wir die Schritte, die zur korrekten Konfiguration eines Proxys für Anfragen in Python erforderlich sind. Wir werden die Konfiguration von Python-Requests mit SOCKS-Proxys separat betrachten.
Die Verwendung von Python zur Einrichtung eines Proxys ist für Benutzer, die die requests-Bibliothek verwenden, sehr einfach. Dazu muss die Adresse des Proxy-Servers in einem Wörterbuch übergeben und dann bei HTTP-Anfragen verwendet werden.
proxies = {
"http": "http://your-proxy-ip:port",
"https": "http://your-proxy-ip:port",
}
response = requests.get("http://example.com", proxies=proxies)
Bei der Verwendung von Python Requests ist die Proxy-Authentifizierung einfach einzurichten. Werfen wir einen genaueren Blick auf die Details.
proxies = {
"http": "http://username:password@your-proxy-ip:port",
"https": "http://username:password@your-proxy-ip:port",
}
response = requests.get("http://example.com", proxies=proxies)
Die beiden neuen Felder, die ausgefüllt werden müssen, sind:
Für Benutzer, die ein höheres Maß an Anonymität benötigen, oder wenn Sie mit stark eingeschränkten Websites arbeiten, funktionieren Standard-HTTP-Proxys möglicherweise nicht. In diesem Fall sind SOCKS-Proxys möglicherweise besser geeignet.
Um die SOCKS-Proxy-Unterstützung zu aktivieren, muss eine zusätzliche Bibliothek mit dem unten aufgeführten Befehl installiert werden:
pip install requests[socks]
Nach der Installation können Sie mit Python Requests einen SOCKS-Proxy einrichten, der wie im unten stehenden Beispiel verwendet werden kann.
import requests
proxies = {
"http": "socks5h://your-proxy-ip:port",
"https": "socks5h://your-proxy-ip:port",
}
response = requests.get("http://example.com", proxies=proxies)
Wenn der Proxyserver eine Authentifizierung benötigt, fügen Sie diese wie unten gezeigt ein.
proxies = {
"http": "socks5h://username:password@your-proxy-ip:port",
"https": "socks5h://username:password@your-proxy-ip:port",
}
Wenn viele Anfragen über einen einzigen Proxy gestellt werden, ist es viel effizienter, Python Requests-Sitzungen mit Proxy zu verwenden, anstatt ihn zu jeder Anfrage hinzuzufügen.
Diese Methode der Verwendung von Proxys hilft dabei, die Einstellungen über alle Sitzungen hinweg beizubehalten. Außerdem vereinfacht sie den Code, verbessert die Leistung und macht vor allem die Implementierung viel einfacher.
Es ist sehr einfach, eine Sitzung zu erstellen, geben Sie einfach requests.Session() ein.
Betrachten Sie das folgende Beispiel:
import requests
# Erstellen einer Sitzung
session = requests.Session()
session.proxies = {
"http": "http://username:password@your-proxy-ip:port",
"https": "http://username:password@your-proxy-ip:port",
}
# Anfrage über die Sitzung
response = session.get("http://example.com")
Alle Python-Requests innerhalb dieser Sitzung verwenden standardmäßig den eingestellten Proxy, ohne dass zusätzliche Konfigurationen erforderlich sind.
When you are actively engaging with a website either for scraping purposes or for automation, using the same proxy over and over again can get your account blocked. This is manageable by rotating proxies given you have a few different proxy servers.
The following example shows the implementation of a loop that rotates proxies for each interaction with the web page:
import requests
import random
proxies_list = [
"http://username:password@your-proxy-ip[1]:port",
"http://username:password@your-proxy-ip[2]:port",
"http://username:password@your-proxy-ip[3]:port",
]
session = requests.Session()
for _ in range(5):
proxy = random.choice(proxies_list) # Zufällige Auswahl eines Proxys
session.proxies = {"http": proxy, "https": proxy}
response = session.get("http://example.com")
print(f"Used proxy: {proxy}")
print(response.status_code)
Im Folgenden finden Sie einige Vorschläge, die Ihnen helfen können, Proxys besser zu verwalten:
In diesem Artikel haben wir uns damit beschäftigt, was Proxy-Server sind, wie man Proxys in Python Requests richtig einsetzt und Proxys über Sitzungen verwaltet, um den Code zu vereinfachen. Das Beispiel zeigt auch die Verwendung von SOCKS- und regulären Proxys, wie die Authentifizierung gehandhabt wird und die Proxy-Verwaltung.
Мы получили вашу заявку!
Ответ будет отправлен на почту в ближайшее время.
С уважением proxy-seller.com!
Bemerkungen: 0