Die Verwendung von Proxy-IPs ist ein gängiges und wichtiges Instrument für das Crawling und die Datenerfassung im Internet. Proxy-IPs können uns dabei helfen, die echte IP-Adresse zu verbergen. Heute werden wir im Detail erklären, wie man Proxy-IP in Python verwendet.
Was ist eine Proxy-IP?
Die Proxy-IP ist ein Vermittlungsserver, der die tatsächliche IP-Adresse des Benutzers verbirgt, indem er Anfragen und Antworten weiterleitet. Durch die Verwendung einer Proxy-IP kann effektiv vermieden werden, dass die Ziel-Website sie blockiert, und die Erfolgsquote der Datenerfassung wird verbessert.
Warum sollte ich eine Proxy-IP verwenden?
Beim Web-Crawling können häufige Anfragen die Aufmerksamkeit der Ziel-Website auf sich ziehen und zu einer IP-Sperrung führen. Die Verwendung einer Proxy-IP kann die Anfragen streuen und das Risiko einer Sperrung verringern. Außerdem können wir mit einer Proxy-IP auf einige Websites zugreifen, die geografische Beschränkungen für die IP haben.
Wie verwendet man Proxy-IP in Python?
Als Nächstes werden wir im Detail erklären, wie man Proxy-IPs in Python in einigen Schritten verwendet.
1. die Verwendung der Anforderungsbibliothek zur Einrichtung des Proxys
Die Requests-Bibliothek von Python ist eine sehr beliebte Bibliothek für HTTP-Anfragen und es ist sehr einfach, damit Proxys einzurichten. Hier ist ein einfaches Beispiel:
Einfuhrgesuche
proxy = {
'http': 'http://123.123.123.123:8080',
'https': 'http://123.123.123.123:8080',
}
url = 'http://httpbin.org/ip'
response = requests.get(url, proxies=proxy)
print(antwort.text)
In diesem Beispiel geben wir die Proxy-IP-Adresse für HTTP- und HTTPS-Anfragen an, indem wir den Parameter proxies setzen. Sie können "http://123.123.123.123:8080" durch die Proxy-IP ersetzen, die Sie tatsächlich verwenden.
2. verwenden Sie die urllib-Bibliothek, um den Proxy einzurichten
Neben der requests-Bibliothek kann auch die in Python eingebaute Bibliothek urllib verwendet werden, um Proxys einzurichten. Hier ist ein Beispiel:
urllib.request importieren
proxy = urllib.request.ProxyHandler({
'http': 'http://123.123.123.123:8080',
'https': 'http://123.123.123.123:8080',
})
opener = urllib.request.build_opener(proxy)
urllib.request.install_opener(opener)
url = 'http://httpbin.org/ip'
Antwort = urllib.request.urlopen(url)
print(response.read().decode('utf-8'))
In diesem Beispiel wird die Proxy-IP über ProxyHandler festgelegt und mit den Methoden build_opener und install_opener global angewendet.
3. die Verwendung von Bibliotheken Dritter - requests_html
requests_html ist eine anforderungsbasierte Bibliothek, die zusätzliche Funktionen, einschließlich JavaScript-Rendering, bietet. Nachstehend finden Sie ein Beispiel für die Verwendung einer Proxy-IP:
from requests_html import HTMLSession
Sitzung = HTMLSession()
proxy = {
'https': 'http://123.123.123.123:8080',
}
url = 'http://httpbin.org/ip'
response = session.get(url, proxies=proxy)
print(antwort.text)
Dieses Beispiel ähnelt der Verwendung der requests-Bibliothek, aber requests_html bietet mehr Funktionalität für Szenarien, in denen komplexe Webseiten verarbeitet werden müssen.
4. die Verwendung von Bibliotheken Dritter - Scrapy
Scrapy ist ein leistungsfähiges Crawler-Framework mit eingebauter Unterstützung für Proxy-IPs. Hier ist ein einfaches Beispiel:
# Einstellungen.py
DOWNLOADER_MIDDLEWARES = {
scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110,
scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': Keine,
}
HTTP_PROXY = 'http://123.123.123.123:8080'
# my_spider.py
importieren scrapy
class MeineSpinne(scrapy.Spider).
name = 'meine_spinne'
start_urls = ['http://httpbin.org/ip']
def parse(self, response): self.logger.info: %s', response.
self.logger.info('IP: %s', response.text)
In diesem Beispiel setzen wir die Proxy-IP, indem wir die Datei settings.py modifizieren. Dann können wir im Spider-Code die Anfrage normal starten und Scrapy wird automatisch die konfigurierte Proxy-IP verwenden.
Wie erhält man eine Proxy-IP?
Es gibt mehrere Möglichkeiten, eine Proxy-IP zu erhalten, darunter kostenlose Proxy-Seiten, kostenpflichtige Proxy-Dienste und selbst erstellte Proxy-Server. Hier sind einige gängige Möglichkeiten, eine Proxy-IP zu erhalten:
1) Websites für freie Mitarbeiter
Es gibt viele Websites, die kostenlose Proxy-IPs und so weiter anbieten. Sie können kostenlose Proxy-IPs von diesen Websites erhalten, aber es ist wichtig zu beachten, dass kostenlose Proxy-IPs in der Regel instabil sind und fehlschlagen können.
2. bezahlte Vermittlungsleistungen
Wenn Sie stabile und effiziente Proxy-IPs benötigen, empfiehlt es sich, kostenpflichtige Proxy-Dienste zu nutzen. IPIPGO zum Beispiel bietet hochwertige Proxy-IPs, die sich für eine umfangreiche Datenerfassung eignen.
3. selbst erstellte Proxyserver
Wenn Sie über die technischen Fähigkeiten und Ressourcen verfügen, können Sie Ihren eigenen Proxyserver einrichten. Wenn Sie einen VPS-Server kaufen und eine Proxy-Software konfigurieren, können Sie eine exklusive Proxy-IP erhalten.
Zusammenfassungen
Ich glaube, dass Sie am Ende dieses Artikels die Grundlagen der Verwendung von Proxy-IPs in Python beherrschen. Ob Sie die requests-Bibliothek, die urllib-Bibliothek oder Bibliotheken von Drittanbietern wie requests_html und Scrapy verwenden, die Einrichtung einer Proxy-IP ist sehr einfach. Ich hoffe, dass dies hilfreich war und wünsche Ihnen viel Erfolg bei der Datenerfassung!