
Ruby Crawler Begegnung Counter-Crawl wie zu tun? Versuchen Sie diesen Proxy-IP-Trick
Crawler Brüder verstehen, dass die Website blockiert IP, die eine rücksichtslose genannt wird. Letzte Woche schrieb ich ein Skript, um den Preis des E-Commerce zu fangen, gerade begonnen, glücklich zu laufen, die Ergebnisse des nächsten Tages auf die Pause - die Ziel-Website direkt an meine IP schwarz. Dieses Mal haben wir die Proxy-IP diese magische Waffe zu ziehen, heute werden wir Ruby nehmen zu sagen, wie die Proxy-Crawler zu spielen.
Wie zum Teufel kann man eine Proxy-IP in Ruby laden?
Die Verwendung von Proxies in Ruby ist lächerlich einfach, je nachdem, welche Bibliothek Sie verwenden. Mit HTTParty zum Beispiel ist die Konfiguration eines Proxys eine Sache von drei Zeilen Code:
erfordern 'httparty'
response = HTTParty.get('https://目标网站.com',
http_proxyaddr: 'Von ipipgo zugewiesene Proxy-IP',
http_proxyport: Portnummer, http_proxyuser: 'ipipgo zugewiesene Proxy-IP', http_proxyport: Portnummer, http_proxyuser: Portnummer, http_proxyuser: Portnummer
http_proxyuser: 'Kontonummer',
httpproxypass: 'Kennwort'
)
Vorsicht! Viele Neulinge vergessen, die Zeitüberschreitung einzustellen. Es wird empfohlen, Folgendes hinzuzufügenZeitüberschreitung: 30Dieser Parameter, sonst das Programm stecken Sie nicht wissen, wie zu tun ist.
Wie wählt man einen dynamischen statischen Proxy aus? Hängt vom Szenario ab
Es gibt drei Pakete bei ipipgo home, und welches Sie wählen, hängt von Ihren geschäftlichen Anforderungen ab:
| Typologie | Anwendbare Szenarien | Preisvorteil |
|---|---|---|
| Dynamisches Wohnen (Standard) | Routinemäßige Datenerhebung | 7,67 $/GB |
| Dynamischer Wohnungsbau (Unternehmen) | Anforderungen für hochfrequente Besuche | 9,47 Yuan/GB |
| Statische Häuser | Langfristig angelegte Operationen | 35RMB/IP |
Letzte Woche habe ich einem Freund geholfen, einen Flugpreisvergleich durchzuführen, und ich konnte mit der dynamischen Unternehmensversion 2000 Anfragen in einer Stunde bearbeiten, und der IP-Pool war groß genug, um nicht dasselbe zu wiederholen. Wenn Sie eine Kontobildung vornehmen wollen, müssen Sie eine statische IP verwenden, die einem Konto entspricht, um sicher zu sein.
Praktischer Leitfaden zur Vermeidung der Grube
Sagen Sie einen realen Fall: einmal mit einem freien Agenten, um Daten zu fangen, sind die Ergebnisse auf den falschen Inhalt zurück! Später geändert, um ipipgo's TK Linie zu lösen. Hier lernen Sie einen Weg, um zu erkennen, ob der Proxy wirksam ist:
def check_proxy
origin_ip = HTTParty.get('http://ip-api.com/json').parsed_response["query"]
proxy_ip = HTTParty.get('http://ip-api.com/json', proxy_params).parsed_response["query"]
puts "Original IP: {origin_ip} | proxy IP: {proxy_ip}"
end
Wenn die beiden IPs bei der Ausführung dieses Codes identisch sind, bedeutet dies, dass der Proxy nicht wirksam ist; überprüfen Sie daher schnell die Konfigurationsparameter. Es wird empfohlen, diese Erkennungslogik zum Crawler hinzuzufügen und sie automatisch jede halbe Stunde auszuführen.
Häufig gestellte Fragen QA
F: Was sollte ich tun, wenn ich immer wieder auf CAPTCHA stoße?
A: Verwenden Sie die Kombination aus Residential Proxy und zufälligem UA-Header. Der ipipgo-Client verfügt über eine UA-Zufallsfunktion. Denken Sie daran, das Anforderungsintervall auf 3-10 Sekunden Zufallswerte einzustellen.
F: Was sollte ich tun, wenn mein Agent langsam ist?
A: Vorrangige Auswahl von geografisch nahe gelegenen Knotenpunkten, wie z.B. das Abfangen japanischer Websites mit dem Serverraum von ipipgo in Tokio. Die von der SERP-API-Standleitung gemessene Latenzzeit kann auf 200 ms oder weniger gedrückt werden!
F: Warum braucht man mehrere Threads?
A: Verwenden Sie Connection Pool, um den Proxy-IP-Pool zu verwalten, wird jeder Thread eine unabhängige IP zugewiesen. Denken Sie daran, die Anzahl der Threads nicht zu überschreiten, oder es wird vergeblich sein!
Warum empfehlen Sie ipipgo?
diesegrenzüberschreitende FachlinieDas letzte Mal, um Kunden zu helfen, fangen südostasiatischen E-Commerce-Daten, mit dem gewöhnlichen Agenten Erfolgsquote von nur 40%, schneiden, um ihre Singapur Linie direkt stieg auf 92%. sagen, eine interne Nachricht, ihre technischen Kundendienst 24 Stunden online, Probleme auftreten, direkt auf die Fehler-Log-Dump über, zehn Minuten in der Lage sein, die Lösung zu geben.
Schließlich nörgelnden Satz: versuchen Sie nicht, billig mit einem kostenlosen Agenten, Licht Sperrung von Daten schwere Klage. Regelmäßige Geschäft oder müssen ipipgo diese Art von ernsthaften Qualifikation Dienstleister verwenden, Datensicherheit als dass ein wenig Agent Gebühr ist viel wichtiger. Nächstes Mal werden wir darüber reden, wie man den Agenten verwenden, um verteilte Crawler zu tun, um sicherzustellen, als der Markt Tutorials wirklich!

