5 Strumenti Gratuiti per fare Scraping

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:

  • Titolo: h5 con classe = titolo;
  • Genere: testo contenuto in una span con classe genere;
  • Anno: testo contenuto in una span con classe anno.. e cosi via.

migliori-film-2017

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.

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.

Parsehub

Pro: strumento con funzioni molto avanzate
Contro: peccato sia un software desktop e non abbia una versione web

Portia

Sito web: https://scrapinghub.com/portia/

Portia è uno strumento sviluppato da Scraping Hub che permette la creazione di un vero e proprio spider. Il tool, completamente visuale, permette di identificare i nodi delle pagine che si vogliono estrarre e creare singoli items che vanno a comporre la pagina di estrazione.

Una volta creato e pubblicato lo spider si può lanciare e lasciarlo lavorare in background. Una volta terminata l’estrazione abbiamo la possibilità di fare il download dei dati in vari formati.

Portia

Pro: lo strumento permette di progettare veri e propri spider che possono essere utilizzati per più progetti
Contro: la selezione visuale dei vari dati non è così intuitiva come altri strumenti

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.

Data Miner

Pro: lo strumento è molto semplice da utilizzare e premette l’estrazione di dati in pagine non visibili attraverso un sistema di navigazione in background
Contro: il limite di 500 pagine/mese nella versione free può non essere sufficiente per alcuni progetti

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.

Web Scraper

Pro: completamente gratuito e semplice da usare
Contro: il sistema è molto basico e non permette estrazioni avanzate

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.

Google Spreadsheets

Pro: permette la combinazione dei dati importati a qualsiasi altra informazione grazie alle funzioni native dei fogli di calcolo
Contro: l’elaborazione dei dati importati ha un limite che non è ben chiaro (una volta era 50 formule, poi 500..) ma che comunque può creare dei disagi nel caso si debbano importare grandi volumi di dati
Inserito in:

Lascia un commento

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Loading Facebook Comments ...