Anfragen pro Sekunde zwischen einem Webbrowser und einem Web Scrapper

Anfragen pro Sekunde zwischen einem Webbrowser und einem Web Scrapper

Mein Verständnis: Wenn ein Webbrowser eine Anfrage zum Anzeigen einer Seite stellt, antwortet der Server mit dem HTML. Dann rendert der Webbrowser diesen HTML-Code und sendet in weniger als einer Sekunde (ungefähr) Anfragen für jedes eingebettete Objekt (z. B. Bilder), das er im HTML sieht, an den Server. Mit einem Web Scrapper stelle ich jedoch eine Anfrage an den Server, die nur das HTML erfasst und das HTML überhaupt nicht rendert.

Die richtige Etikette für Web Scrapping besagt, dass Sie Ihre Anfragen auf maximal eine pro Sekunde begrenzen sollten, um den Server nicht zu überlasten.

Warum stellt es also kein Problem dar, wenn der Webbrowser für jedes eingebettete Objekt eine Anforderung sendet (mehrere Anforderungen innerhalb einer Sekunde), während es für einen Web Scrapper ein Problem ist, mehrere Anforderungen pro Sekunde nur für die HTML-Quelle für verschiedene Seiten zu senden?

Antwort1

Die Gründe, warum Web Scraper (nicht Scrapper) eine Verzögerung verwenden, sind:

  • um zu verbergen, dass sie das Web durchsuchen und von den Websites, die sie durchsuchen, ausgeschlossen zu werden (durch die Verwendung von kurzen Verzögerungen zwischen den Seiten sehen sie eher aus wie ein Webbrowser, der von einem Menschen bedient wird, der im Internet surft)
  • aus Rücksicht auf den Eigentümer der Website (das Anfordern großer Datenmengen in sehr kurzer Zeit kann den Server überlasten und dazu führen, dass die Website für andere Benutzer nicht mehr reagiert)

Wenn Ihr Browser (oder ein Web Scraper) eine Seite anfordert, muss er nicht eine ganze Sekunde warten, bevor er Objekte auf derselben Seite anfordert. Er kann sie sofort anfordern – dies führt zu einer besseren Benutzererfahrung (schnelleres Laden der Seite).

Was ein „normaler“ Benutzer nicht tun wird, ist, innerhalb eines sehr kurzen Zeitraums verschiedene Seiten anzufordern. Ein Benutzer sieht sich eine Seite an, klickt auf einen Link, um zur nächsten Seite zu gelangen usw.
Wenn ein Benutzer also eine Site durchsucht, kommt es zu einer Verzögerung zwischen dem Anfordern verschiedener Seiten derselben Website. Dies ist sehr wahrscheinlich die 1-Sekunden-Verzögerung, die Sie in Ihrer Frage erwähnt haben.

Um eine Site schnell zu scrapen, möchten Web Scraper natürlich die kürzestmögliche Verzögerung nutzen. Sie verwenden verschiedene Möglichkeiten, um den Prozess zu beschleunigen (z. B. mehrere Sites parallel scrapen; es so aussehen lassen, als ob die Anfragen von mehreren verschiedenen Benutzern stammen).
Für Web Scraper gibt es immer einen Kompromiss zwischen den Gründen für eine Verzögerung und der Notwendigkeit, die Arbeit zu erledigen.

Weitere Informationen finden Sie im Eintrag aufWikipedia

verwandte Informationen