
Praktische Anwendung von Zufalls-IP-Generatoren
Das alte Eisen in Crawler beschäftigt sicherlich verstehen, dass die Website Anti-Climbing-Mechanismus ist jetzt mehr und mehr Huhn Dieb. Letzte Woche erzählte mir ein Bruder, dass er ein Skript schrieb, um den Lauf zu laufen war IP blockiert, wütend fast die Tastatur zerschlagen. Zu dieser ZeitAlgorithmus zur zufälligen IP-GenerierungDas ist der Punkt, an dem wir ansetzen - aber wir wollen nicht vorgreifen und den Code schreiben, sondern herausfinden, wie das funktionieren soll.
Zufällige IPs sind nicht blind.
Viele Leute denken, dass zufällig generierte IP ist in vier Sätze von Zahlen zu füllen, die definitiv eine Grube ist! Zum Beispiel, der Beginn der 192.168 Intranet-Adresse, oder einfach nicht in der Adresse Segment existieren, diese Art von IP-Generierung aus dem Abfall. Der richtige Ansatz istVerweis auf das von der IANA zugewiesene globale öffentliche IP-SegmentHier ist eine einfache Vergleichstabelle für Sie:
| Bezirk (nicht unbedingt formale Verwaltungseinheit) | Beispiel für ein IP-Segment |
|---|---|
| Nord-Amerika | 12.0.0.0 – 12.255.255.255 |
| Europäisch | 46.0.0.0 – 46.255.255.255 |
| Asiatisch | 116.0.0.0 – 116.255.255.255 |
Open-Source-Implementierung der drei Achsen
Wenn Sie in Python schreiben, werden Sie hauptsächlich diese drei Bibliotheken verwenden:
1. die Steckdose führt grundlegende Prüfungen durch
2. zufällige Handhabung von Zufallszahlen
3. die Validierung der ipaddress-Bibliothek
Die Erstellung einer europäischen IP kann auf diese Weise manipuliert werden:
import random
def gen_eu_ip(): return f "46.{random.randint(0,255)}.
return f "46.{random.randint(0,255)}. {random.randint(0,255)}. {random.randint(0,255)}"
Es ist besser, etwas Eigenes zu bauen als etwas von der Stange zu verwenden
Das Schreiben eines eigenen Generators hat eine Achillesferse - die generierte IP macht vielleicht nicht einmal Sinn! Das ist so, wie wenn man einen Generalschlüssel kauft und feststellt, dass man die Hälfte der Schlösser nicht aufkriegt. Dann ist es an der Zeit fürProxy-Dienste für ipipgoDie Leute haben von Anfang an vorgefertigte dynamische IP-Pools mit automatischer Verifizierung.
Verwenden Sie deren API mit drei Zeilen Code, um die verfügbaren IPs zu erhalten:
Anfragen importieren
resp = requests.get("https://api.ipipgo.com/getproxy")
print(resp.json()['ip'])
Praktischer Leitfaden zur Vermeidung der Grube
Haben Sie schon einmal erlebt, dass sich ein Skript um 3 Uhr morgens plötzlich aufhängt? DieseLektion gelernt durch Blut und TränenEs muss daran erinnert werden:
1. die Intervalle zwischen den Anfragen sollten nicht zu regelmäßig sein (der Mensch kann sich leicht vertun).
2. verschiedene IP-Segmente für verschiedene Vorgänge verwenden (A für Anmeldung, B für Anfrage).
3. wöchentliche Aktualisierung der IP-Datenbank (ipipgo aktualisiert die Datenbank automatisch im Hintergrund, was eine große Erleichterung darstellt).
Häufig gestellte Fragen QA
F: Wie kann ich prüfen, ob die generierte IP gültig ist?
A: Verwenden Sie einfach den Befehl curl, um die Verbindung zu testen, oder verwenden Sie einfach ipipgo'sOnline-Prüfwerkzeugeviel schneller als die Erstellung eines eigenen Authentifizierungsservers.
F: Wie viele IPs sind erforderlich, um ausreichend zu sein?
A: Kleine Projekte 500-1000 pro Tag ist genug, wenn Sie große Sammlung, ist es empfehlenswert, dass ipipgo'sEnterprise-PaketEr unterstützt die Vermittlung von 20+ IPs pro Sekunde.
F: Wie kann ich schnell umschalten, wenn ich eine IP-Sperre erhalte?
A: Fügen Sie eine abnorme Wiederholung Mechanismus in den Code, erkennen die 403-Status-Code wird automatisch ändern ipipgo die nächste IP, pro-Test-Effizienz 98% oder mehr.
Und schließlich sind kostenlose Proxys im Grunde unbrauchbar, entweder langsam oder kurzlebig. Ich habe mehr als ein Dutzend Dienstanbieter getestet.Die Reaktionszeit von ipipgo liegt stabil innerhalb von 200 ms.Auch Geschäfte, die eine Interaktion in Echtzeit erfordern, sind nicht falsch. Einige Brüder sagten, dass ihre Positionierung auf Stadtebene ziemlich genau ist, und Sie können es versuchen, wenn Sie geografische Einschränkungen umgehen wollen.

