Co to jest web scraping?
źródło: sequentum (http://www.sequentum.com/)
Szacuje się, że światowa sieć zawiera około 50 miliardów zaindeksowanych stron [1]. Te strony są otwarte dla wszystkich ponieważ są dostępne za pośrednictwem wyszukiwarek. Proces indeksowania jest procesem automatycznym, który jest ciągły przez co zapewnia znalezienie najnowszych i aktualnych treści. Indeksowanie jest przeprowadzane przez roboty sieciowe, które stale sprawdzają zmiany dokonywane na stronach. Robot indeksujący (ang. web crawlers) są jednym z najwcześniejszych przykładów oprogramowania lub robotów sieciowych (zwykle określanych po prostu jako boty).
Wszystkie informacje znajdujące się na zaindeksowanych stronach internetowych mogą zostać znalezione przez boty, a więc dostęp do nich będzie mógł uzyskać każdy użytkownik. Oznacza to, że firmy mogą mieć łatwy dostęp do danych konkurencji. Ta potrzeba została szybko dostrzeżona przez nowe przedsięwzięcia, takie jak na przykład strony porównujące ceny. Ich działanie polega wyłącznie na gromadzeniu informacji z wielu innych stron, które zajmują się sprzedażą różnych towarów. Często proces ten działa również opiera się na botach, które nazywane są web scrapers.
Szacuje się, że 46% całej aktywności w sieci jest teraz wykonywane przez boty [2]. Niektóre, takie jak roboty sieciowe, są ogólnie uważane za boty dobre. Inne, na przykład te wykorzystywane do przeprowadzania ataków Denial of Service, to boty złe. Web scrapers trudno zaliczyć do którejś z tych grup. W niektórych przypadkach właściciel witryny chce, aby jego treść została wyszukana i zagregowana w innym miejscu. Są jednak sytuacje, gdy pobieranie takich danych jest równoznaczne z kradzieżą.
Sama idea web scrapingu poprzedza samą sieć. Jako pierwszy pojawił się na początku lat 90-tych jako sceen-scraping, który polegał na przeniesieniu danych wyjściowych generowanych dla jednostek wyświetlania wizualnego (ang. Visual Display Units, VDU) na nowe GUI takie jak np. system Windows firmy Microsoft. Pomysł został później dostosowany do obsługi starszych aplikacji dla przeglądarek internetowych. W wielu przypadkach docelowe strony internetowe będą wymagały wprowadzenia danych wejściowych. Aby symulować wypełnianie pól, tak jak w przypadku wielu botów, web scrapers muszą naśladować ludzką działalność, co może utrudniać odróżnienie ich od rzeczywistych użytkowników.