login LOGIN
CHIUDI chiudi
Il mio profilo

mostra
Hai dimenticato la password?
Inserisci l'indirizzo email di registrazione per reimpostare la password.
Segui le istruzioni che ti abbiamo inviato per posta elettronica.

Web Crawler e spider, cosa sono e come funzionano

Sono il cervello dei moderni motori di ricerca. Permettono di archiviare le pagine web e indicizzarle nel database dei vari Google, Bing e Yahoo!

Un ragno, spider in inglese

Google, Bing, Yahoo! e le loro controparti cinesi adottano tecnologie informatiche raffinatissime per poter offrire – quasi all’istante – migliaia e migliaia di risultati ad ogni singola ricerca effettuata dagli utenti. Ma cosa rende possibile il funzionamento dei motori di ricerca? Il loro cervello, ovvero il web crawler spider.

Cosa è un web crawler

Il web crawler spider (a volte abbreviato semplicemente in “spider” oppure in “web crawler”) è un bot Internet che periodicamente scandaglia il World Wide Web allo scopo di crearne un indice o, meglio ancora, una mappa. I motori di ricerca – e alcuni altri servizi Internet – utilizzano software di questo genere per aggiornare il loro contenuto o per aggiornare gli indici web presenti nei loro database. Gli spider possono copiare il contenuto di tutte le pagine che visitano e conservarlo per dare modo al motore di ricerca di analizzarlo e indicizzarlo, ovvero catalogarlo individuandone parole chiave e argomenti trattati, in un secondo momento. Così facendo è possibile restituire risultati delle ricerche in modo veloce e accurato.

Come funziona il web crawler

Uno spider comincia il suo lavoro dai cosiddetti seeds (“semi” tradotto in italiano). I seeds altro non sono che una lista di URL, corrispondenti ad altrettanti siti web, che il programma dovrà visitare sistematicamente. Il contenuto di questi indirizzi sarà analizzato e salvato in memoria per essere poi indicizzato dal software di catalogazione associato al motore di ricerca. In particolare, il web crawler andrà alla ricerca dei collegamenti ipertestuali all'interno delle pagine, aggiungendoli alla lista degli URL da visitare successivamente. Gli URL di questa lista, chiamata crawl frontier (“frontiera dell'indicizzazione” in italiano), vengono visitati ricorsivamente dallo spider, così da poterne registrare eventuali modifiche o aggiornamenti.

 

 

Naturalmente, gli URL e i collegamenti ipertestuali presenti nelle pagine della frontiera verranno a loro volta aggiunti alla lista generale e visitati in seguito. In questo modo viene a crearsi una vera e propria ragnatela di pagine Internet, legate le une alle altre attraverso collegamenti ipertestuali (hyperlinks). Da qui la spiegazione del nome spider (“ragno” in inglese) e del perché Tim Berners-Lee decise di chiamare World Wide Web (“grande ragnatela mondiale”, più o meno) il suo servizio basato sulla rete Internet.

Nel caso in cui il crawler agisca in modalità “archiviazione”, copia e conserva i contenuti di ogni singola pagina che visita. Per velocizzare il processo le pagine sono salvate come un'istantanea, restando però leggibili e navigabili.

Le policy di funzionamento

Il comportamento degli spider è il risultato della combinazione di diverse policy regolatorie. Sono quattro, in particolare, quelle che hanno i maggiori effetti sul lavoro dei web crawler: la policy di selezione, la policy per la gestione delle visite, la policy di cortesia e la policy di parallelizzazione.

 

Google bot

 

Policy di selezione

Data la dimensione attuale del web, per uno spider è praticamente impossibile riuscire a indicizzare tutti i siti web e tutte le pagine che li compongono (anche se, bisogna ricordare, quelle indicizzabili sono la minima parte della Rete). Secondo alcuni studi effettuati sui database dei motori di ricerca più famosi, un web crawler è attualmente in grado di scansionare e “lavorare” tra il 40 e il 70% delle pagine pubbliche, mentre nel passato questa percentuale era più bassa.

Dal momento che un bot non visiterà che una frazione delle pagine della websfera, sarà molto importante che quelle scaricate contengano informazioni rilevanti e non siano un semplice “campione” casuale. Ciò è reso possibile grazie ad una scala di priorità assegnata allo spider in fase di programmazione. L'importanza di una pagina sarà funzione della sua qualità intrinseca, della popolarità in termini di link che vi rimandano o di visite che riceve e, in casi molto particolari, degli stessi URL che la compongono. Sviluppare una policy di selezione funzionale e funzionante è un lavoro tutt'altro che semplice, dato che al momento della scansione lo spider “conoscerà” solamente una piccolissima parte del web.

Policy di gestione delle visite

Il web ha una natura fortemente dinamica e, per quanto possa essere veloce e performante, un web crawler impiegherà decine di giorni, se non mesi, per riuscire a scandagliare la porzione di Rete che gli è stata assegnata. È probabile che in questo lasso di tempo pagine già visitate e indicizzate siano cambiate, anche in maniera sostanziale. E’ necessario, quindi, tornare periodicamente a visitare le pagine già indicizzate, affinché i contenuti salvati nel database vengano aggiornati.

Policy di cortesia

Nel corso della loro scansione, i crawler possono anche avere un impatto di una certa consistenza sulle performance di un sito web. Anche se la loro azione è utile e necessaria, gli spider esigono il pagamento di un prezzo piuttosto salato in termini di risorse utilizzate (risorse di Rete, sovraccarico dei server, ecc.) per i loro scopi. Una soluzione, seppur parziale, a questo problema, è rappresentata dal cosiddetto protocollo d'esclusione robot. In base a tale protocollo, tra i file presenti nella cartella della homepage di un sito web, è possibile inserire anche un file denominato robot.txt.

 

Web crawler

 

Questo documento comunica al web crawler una serie di informazioni su come eseguire l’indicizzazione del sito, come ad esempio quali siano le parti del sito da scansionare e quali no e quale sia l'intervallo di tempo minimo che deve trascorrere tra la scansione di una pagina del sito e la successiva.

Policy di parallelizzazione

Un web crawler parallelo è uno spider che esegue differenti scansioni nello stesso momento. Per evitare che una singola pagina web venga scansionata più volte dallo stesso bot in brevissimo tempo, si rende necessaria una policy che controlli l’assegnazione dei nuovi URL scoperti tra i semi o nelle pagine di frontiera in modo tale da evitare doppioni.

A cura di Cultur-e
Addestramento IA non consentito: É assolutamente vietato l’utilizzo del contenuto di questa pubblicazione, in qualsiasi forma o modalità, per addestrare sistemi e piattaforme di intelligenza artificiale generativa. I contenuti sono coperti da copyright.
TecnologicaMente
Sei un Multitasking Master o un Procrastinatore Pro?
Immagine principale del blocco
Sei un Multitasking Master o un Procrastinatore Pro?
Fda gratis svg
Fai il test sulle abitudini di lavoro e studio con la tecnologia
Fai il test gratuito

Iscriviti
all'area personale

Per ricevere Newsletter, scaricare eBook, creare playlist vocali e accedere ai corsi della Fastweb Digital Academy a te dedicati.