2016-06-15 8 views
-6

Ich schrieb vor kurzem einen einfachen Schaber mit Anfragen und BeautifulSoup. Der Scraper funktionierte einwandfrei bis zu einem Tag, ich lief es und erhielt eine "Verbindung zurückgesetzt von Peer, Error 54". Obwohl es mehrere Fragen gibt, wie man Fehler 54 umgehen kann, frage ich mich nicht.Ich glaube mein Scraper wurde blockiert, aber ich kann über einen normalen Browser auf die Website zugreifen, wie können sie das tun?

Um zu testen, ob die blockierte meine spezifische IP oder Computer, ich habe den Code auf einem anderen Computer und IP-Adresse und es hat gut funktioniert. Die beunruhigende Sache ist jedoch, dass ich selbst auf meinem alten Rechner die Seite in einem normalen Browser einwandfrei aufrufen kann.

Ich frage mich beide, wie die Website konnte dies tun, ohne meine IP direkt zu blockieren und wenn jemand irgendwelche Tipps hat, um dies in Zukunft zu vermeiden.

+3

Ich stimme für das Schließen dieser Frage als Off-Topic ab, da diese Website für bestimmte Programmierfragen keine Tipps zum Arbeiten mit Netzwerksicherheitsmaßnahmen und/oder zum Festschreiben von nicht autorisierten Netzwerk-Scans bietet. –

+0

Was ist die Website? Hast du ihre Tos gelesen? –

+0

https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=scraping%20without%20getting%20blocked – MatthewMartin

Antwort

2

Ich frage mich, beide, wie die Website in der Lage war, dies zu tun, ohne meine IP völlig blockiert und ...

Durch alle möglichen Dinge über Ihre Anfrage untersuchen, einige geradlinig und einige obskure . Zu den einfachen Elementen gehören User-Agent-Header, Cookies und die korrekte Schreibweise dynamischer URLs.

Arcane Elemente enthalten Ihre IP-Adresse, das Timing Ihrer Anfrage, die Häufigkeit der damit verbundenen Anfragen, den Inhalt anderer Header.

... wenn jemand irgendwelche Tipps hat, dies in Zukunft zu vermeiden.

Ja. Wenden Sie sich an die Eigentümer der betreffenden Website und kooperieren Sie mit eventuell vorhandenen Einschränkungen. Untersuchen Sie die Bedingungen Ihrer Lizenz zur Nutzung ihrer Website (wenn es sich um eine allgemeine öffentliche Lizenz handelt, wird sie oft als "Nutzungsbedingungen" bezeichnet). Stellen Sie sicher, dass Sie ausschließlich innerhalb dieser Bedingungen arbeiten.

Wenn die Website-Daten über eine API verfügbar sind und Ihre Verwendung den Lizenzbedingungen der API entspricht, verwenden Sie sie anstelle von Screen-Scraping. Das Format der Daten wird konsistenter sein, Ihr Code wird schneller ausgeführt, und Sie werden weniger eine Belastung (oder Bedrohung) für den Besitzer der Website sein.

+0

Danke Rob, dass du dir die Zeit genommen hast, meine Frage zu beantworten. Ich weiß, dass es ziemlich allgemein war, ich lerne jetzt nur noch die Seile, also ist mein Verständnis von Kratzen eher, na ja, allgemein. Ich akzeptiere deine Antwort, um dir deine Punkte zu geben und weil es mir hilft, anzufangen. Danke noch einmal! – user6326823