
Das größte Kopfzerbrechen von Zillow Data Crawl: IP-Blockierung
Ältere Autofahrer, die sich mit dem Durchsuchen von Immobiliendaten beschäftigt haben, wissen, dass der Anti-Crawl-Mechanismus von Zillow strenger ist als ein Nachbarschaftstor. Und jetzt kommt der schlimmste Teil.IP-Adresse ist gesperrtWenn Sie Ihren eigenen Breitbandanschluss verwenden, können Sie Zillow diesen Monat nicht mehr nutzen. Wenn Sie Ihren eigenen Breitbandanschluss nutzen, können Sie Zillow diesen Monat grundsätzlich nicht mehr nutzen.
Letzte Woche beschwerte sich ein Freund, der sich mit der Analyse von Auslandsimmobilien beschäftigt, bei mir, dass er drei Tage damit verbracht hatte, ein Crawler-Skript zu schreiben, und schon nach einer halben Stunde Laufzeit wurde er von mehr als 20 IPs blockiert.ipipgo's WohnungsvermittlungsdienstEs wird in der Lage sein, das Spiel zu brechen, ihre dynamische IP-Pool ist groß genug, um automatisch die Ausfahrt IP für jede Anfrage zu wechseln, und die Pro-Test kontinuierliche Sammlung von 6 Stunden nicht das Verbot auslösen.
Drei wichtige Schritte zum Auffinden von JSON-Daten
Öffnen Sie die Chrome-Entwicklertools (F12), wechseln Sie zur Registerkarte "Netzwerk" und tippen Sie auf einen beliebigen Filter auf der Zillow-Suchseite, z. B. "Preisbereich anpassen". Beobachten.Anfrage vom Typ XHRDer Schlüssel ist, nach einem Anfragelink zu suchen, der "api/search" enthält.
Hier ein Tipp: Geben Sie in das Filterfeld/SucheSie können die Zielanfrage schnell finden. Wenn Sie auf den entsprechenden Vorgangsdatensatz klicken, können Sie auf der Registerkarte Vorschau dieStrukturierte JSON-Datendie mehr als 20 wichtige Daten verbirgt, wie z. B. die Koordinaten des Angebots, Grundrisse, historische Preise und vieles mehr.
| Feldname | Datentyp | Beispielwert |
|---|---|---|
| zpid | numerisch | 1234567890 |
| Preis | string (Informatik) | “$1,235,000” |
| Schlafzimmer | Ganzzahl (math.) | 3 |
Proxy-IP-Konfigurationstipps für die reale Welt
Ein Beispiel, das die Python-Request-Bibliothek verwendet, mit Schwerpunkt auf derKrümmer Tarnungim Gesang antwortenAgent RotationZwei Links. Hier ist ein Fallstrick: Zillow prüft den Gerätetyp des User-Agents, daher wird empfohlen, die neueste Version des UA-Headers von Chrome zu verwenden, nicht diese beschissenen Crawler-UAs.
importiere Anfragen
from ipipgo import get_proxy Hier verwenden wir das ipipgo SDK.
proxy = get_proxy(type='residential') residential proxy ist näher am echten Benutzer
headers = {
User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36...' ,
'Accept-Language': 'en-US,en;q=0.9'
}
response = requests.get(
'https://www.zillow.com/api/search', , 'Accept-Language': 'en-US,en;q=0.9' }
proxies={"http": proxy, "https": proxy},
headers=headers,
timeout=10
)
zur Kenntnis nehmenStellen Sie den Timeout nicht niedriger als 8 Sekunden ein.Eine zu schnelle Anfragefrequenz wird als Bot erkannt. Es wird empfohlen, mit zufälligen Verzögerungen zu arbeiten mittime.sleep(random.uniform(1.2, 4.5))Simuliert reale Betriebsintervalle.
Fünf Schlaglöcher, die Sie unbedingt vermeiden müssen
1. Verwenden Sie keinen Rechenzentrums-ProxyAWS/GCP-IP-Segmente werden seit langem von Zillow erkannt, daher sind Residential Proxies die richtige Wahl!
2. Cookies sollten getrennt werdenIndividuelle Cookie-Speicherung für jede Proxy-IP
3. Das Laden von Bildern soll deaktiviert werdenBilder nicht laden beim Crawlen von Daten, spart Traffic und reduziert das Risiko!
4. Die CAPTCHA-Erkennung ist mit Vorsicht zu genießenAutomatisierte Kodierungsdienste können die Wahrscheinlichkeit, blockiert zu werden, erheblich erhöhen
5. Kontrolle der Häufigkeit der Datenaktualisierung: Erfassen Sie dasselbe Angebot nicht öfter als 3 Mal pro Tag.
Häufig gestellte Fragen QA
F: Warum werde ich mit einer Proxy-IP immer noch blockiert?
A: Prüfen Sie, ob Sie einen geteilten Proxy verwenden, es wird empfohlen, den exklusiven Wohn-Proxy von ipipgo zu ändern, jede Sitzung ist eine saubere IP
F: Was sollte ich tun, wenn einige Felder in den JSON-Daten fehlen?
A: Versuchen Sie, die Anfrageparameter zu ergänzen?include=allMöglicherweise müssen Sie sich in den Staat einloggen, denken Sie daran, einen Proxy zu hängen, um die lokale IP der Vereinigten Staaten zu simulieren!
F: Welches der ipipgo-Pakete ist für Zillow am besten geeignet?
A: EmpfohlenProfessioneller WohnungsvermittlerUnterstützung der automatischen IP-Rotation + Geo-Location, vor allem auf die regionalen Hauspreise zu fangen, können die staatlichen Ebene Export IP angeben
Wie man einen zuverlässigen Vermittlungsdienst auswählt
Ich habe die blutige Erfahrung gemacht, sieben oder acht Dienstleister in Anspruch genommen zu haben:
1. mindestens 5 Millionen IP-Pools (ipipgo hat einen privaten IP-Pool von 12 Millionen +)
2. zu habenGarantierte Erfolgsquote der AnfragenWenn er niedriger als 95% ist, können Sie ihn einfach übergehen.
3. die API sollte die Anpassung an die jeweiligen Geschäftsszenarien unterstützen, z. B. die Festlegung der maximalen Anzahl der Verwendungen einer einzelnen IP
4. muss 7 × 24 Stunden technische Unterstützung, die letzten drei Uhr morgens, um die IP nicht angeschlossen werden kann, ipipgo Technologie Sekunden zurück auf die Arbeit zu erfüllen, um!
Zum Schluss noch ein Hinweis für Neulinge: Versuchen Sie nicht, diese $0.1/IP-Müll-Proxys billig zu kaufen, das Windkontrollsystem von Zillow ist schlauer als Sie denken. Sie können ipipgo in der Testphase verwenden.Kostenloses Schnupperpaket500 Anfragen pro Tag reichen aus, um den gesamten Prozess zu durchlaufen.

