Indice dell’articolo
Che cos’è lo Scraping
Lo Scraping (dall’inglese to scrape che significa “grattare”, “raschiare”, “racimolare”) è una tecnica informatica che consiste nell’estrazione di dati in modo automatizzato attraverso strumenti in grado di scandagliare risorse web e collezionare informazioni.
Lo stesso Google attraverso i suoi parser utilizza metodi di scraping per analizzare i siti web ed estrarne i contenuti che utilizzerà poi per la propria catalogazione
Il metodo di estrazione dei dati tramite sistemi di scraping si basa sull’analisi del codice di un sito per riconoscerne strutture logiche simili ed essere quindi in grado di selezionare solo i dati di proprio interesse.
Facciamo un esempio per capire meglio.
Immaginiamo di volere fare una ricerca dei migliori film usciti nel 2017. Andiamo su Google e cerchiamo “migliori film 2017” e scegliamo un sito web.
Il sito in questione ha al suo interno una lista di tutti i film usciti nel 2017 con informazioni su genere, anno di uscita, nazionalità, etc…
Se volessi utilizzare questa lista dovrei fare un copia ed incolla della pagina rischiando però di portarmi dietro informazioni di cui non ho bisogno (es: formattazione, immagini, etcc.). Per fare un’estrazione pulita dei dati ci viene in aiuto proprio lo scraping che grazie al riconoscimento dell’architettura del sito ci permette di estrarre solo i dati di nostro interesse.
L’immagine sotto mostra come la pagina del listato dei film abbia delle informazioni ricorrenti:
Grazie allo scraping posso identificare queste informazioni ed estrarle in maniera automatizzata. L’identificazione di queste informazioni può avvenire tramite diverse modalità che sfruttano la selezione di dati html o css (es: selettori jquery, nodi xml, selettori css, etc…).
Strumenti di Scraping
Lo Scraping è una tecnica che viene utilizzata ormai da molti anni e nel tempo sono cambiate le tecnologie per effettuare analisi automatizzate anche se la logica alla base dell’estrazione è rimasta sempre la stessa. In questo articolo vi indico 5 strumenti gratuiti (con possibilità di passare a versione premium per alcuni) che possono essere utilizzati per fare scraping.
Octoparse
Sito web: https://www.octoparse.com/
Octoparse è uno strumento di scraping potente ed efficace che permette di estrarre diverse tipologie di dati da sorgenti online. Grazie ad un’interfaccia semplice e visuale è possibile configurare il tool in pochi passi ed impostare l’architettura di estrazione senza dover scrivere una singola riga di codice.
Oltre alla versione gratuita Octoparse offre una versione premium dotata di proxy con rotazione automatica dell’ip, accesso all’api e gestione in cloud dei dati estratti.
Parse Hub
Sito web: https://www.parsehub.com/
Parsehub è un software desktop disponibile per Windows, Mac e Linux dotato di caratteristiche molto avanzate tra cui la possibilità di sfruttare diversi IP (per evitare blocchi da parte del server), l’integrazione con sistemi di archiviazione (come dropbox) e la scansione di siti realizzati con tecnologie come Javascript e Ajax (difficili da scansionare da altri strumenti).
Nella versione gratuita Parsehub permette la gestione di 5 progetti e lo scraping di 200 pagine in 40 minuti.
Data-Miner.io
Sito web: https://data-miner.io/
Data Miner è un tool di scraping che si integra con Google Chrome ed è composto da due componenti, l’esecutore (Data Miner) ed un creatore di “ricette” (Data Miner Beta).
Tramite l’estensione si possono creare delle ricette di scraping selezionando in maniera visuale i dati da estrarre nella singola pagina. Una volta creata la ricetta si visita il sito e si lancia lo strumento che procede all’estrazione e poi al download delle risorse.
Nella versione free lo strumento permette di estrarre fino a 500 pagine al mese.
Webscraper.io
Sito web: http://webscraper.io/
Web Scraper è un’estensione di Google Chrome che si integra con la Console per Sviluppatori. Una volta lanciata, l’estensione permette di creare una sitemap del sito che si vuole “scrapare” selezionando i vari elementi e fornendo un’anteprima del risultato.
Al termine della creazione della sitemap basta lanciare l’estrazione e lo strumento ci fornisce una tabella con i dati scaricati esportabile in csv.
Google Spreadsheets
Sito web: https://spreadsheets.google.com/
Google Spreadsheets è il tool di Google dedicato ai fogli di calcolo (la versione Googliana di Excel); lo strumento non nasce come sistema di scraping ma grazie alla funzione IMPORTXML permette l’importazione di vari tipi di dati strutturati, tra cui XML, HTML, CSV, TSV e feed XML RSS e ATOM.
Nel file spreadsheet va inserito l’url della pagina che si vuole analizzare e le query xpath che vanno ad identificare gli elementi da scansionare.
Una volta eseguita la funzione importa nel file Google i dati della pagina che stiamo scansionando.
Ho provato Portia, forse non lo so usare bene, ma ci ha messo ore e mi ha restituito soltanto 3 post.
Qualcuno lo ha provato? Mi sapete dire se Sbaglio qualcosa?
Ciao Andrea,
per la mia esperienza ha sempre funzionato correttamente. Tutto sta a selezionare le giuste informazioni da estrarre tramite i selettori CSS o Xpath. Poi una volta avviato il tool lo spider si occuperà di recuperare le informazioni che trova nel sito target.