Fogli Google: come utilizzare la funzione importXML per il web scraping
Una delle caratteristiche più importanti di Fogli Google è la possibilità di importare contenuti direttamente dai siti web: la funzione importXML() di Fogli Google legge, infatti, i contenuti strutturati di un sito web e li trasferisce nel foglio di lavoro Google desiderato.
I due programmi di fogli di calcolo Fogli Google ed Excel hanno molti aspetti in comune, ma differiscono in alcuni punti essenziali, come evidenzia il nostro confronto tra Excel e Fogli Google.
La funzione di importazione “XML to Google Sheets” è particolarmente utile quando si desidera creare tabelle da dati forniti online. In questo articolo imparerete come utilizzare e sfruttare al meglio questa utile opzione.
Fogli Google: breve spiegazione della funzione importXML()
La funzione importXML() legge dati strutturati di progetti web e li inserisce nelle celle di un foglio di lavoro di Fogli Google.
Procedete nel modo seguente per eseguire la funzione nel software Google:
Procedete nel modo seguente per eseguire la funzione nel software Google:
=importXML(URL, XPath)
importXML() di Fogli Google ha solo due parametri:
- URL: l’indirizzo web da cui si desidera estrarre i dati. Il modo più semplice per farlo è copiarlo direttamente dalla barra degli indirizzi del browser.
- XPath: indicazione della posizione specifica in cui sono posizionati i dati che si desidera importare.
Informazioni dettagliate su XPath sono disponibili nel nostro tutorial su XPath.
Se specificate i parametri direttamente nella funzione, è necessario racchiuderli tra virgolette. Per evitare di doverli inserire tra virgolette, è possibile scrivere i due parametri in due celle di una tabella e farvi quindi riferimento nella funzione della formula. In questo modo non è necessario inserire le virgolette.
Google Workspace (precedemente noto come G Suite)
Adesso collaborare è ancora più facile - Tutti gli strumenti di Google che conosci
- Posta Gmail con indirizzo corrispondente al tuo dominio
- Assistenza clienti personalizzata
Casi d’utilizzo di importXML di Fogli Google
importXML() è molto versatile. Di particolare interesse sono le seguenti quattro possibili applicazioni:
- Creazione di liste di link
- Analisi di dati strutturati di siti web
- Estrazione di contenuto testuale
- Importazione di tabelle HTML
I fogli di lavoro di Google fanno parte della Google Workspace (ex G Suite) messa a disposizione da IONOS, incluso un dominio gratuito!
Creazione di liste di link
A volte si può avere la necessità di creare una lista ordinata di indirizzi web interessanti, che deve includere, tra l’altro, l’URL, il nome del sito web e una breve descrizione. Un buon punto di partenza per questo scenario d’uso è il sito Nodesign, ovvero una raccolta di link che presenta strumenti grafici per sviluppatori che hanno poca o nessuna dimestichezza con il design. I link vengono visualizzati in caselle contenenti ciascuna un’immagine, un titolo e una breve descrizione. Attualmente la raccolta contiene più di 140 voci.
A partire da questa raccolta, vogliamo creare una lista di link nei fogli di lavoro di Google con la funzione importXML(). Per farlo, procediamo così:
- Determinare i contenuti nel codice sorgente del sito web
- Definire XPath
URL: l’URL è un attributo del tag <a> che è posizionato sotto il tag <h5>. L’XPath è quindi il seguente:
//h5/a/@href
Testo di ancoraggio: il testo di ancoraggio è il contenuto del tag <a> che abbiamo già definito sopra: //h5/a. Riprendiamo l’XPath di sopra togliendo l’attributo @href.
Descrizione breve: l’XPath è, in questo caso, un po’ più complicato perché non si trova allo stesso livello gerarchico del tag <a>. Se prendessimo semplicemente il paragrafo <p> come XPath, i testi non corrisponderebbero più all’URL. Pertanto, dobbiamo definire come paragrafo che contiene la descrizione breve l’elemento che si trova allo stesso livello gerarchico dopo il tag <h5>:
Descrizione breve: l’XPath è, in questo caso, un po’ più complicato perché non si trova allo stesso livello gerarchico del tag <a>. Se prendessimo semplicemente il paragrafo <p> come XPath, i testi non corrisponderebbero più all’URL. Pertanto, dobbiamo definire come paragrafo che contiene la descrizione breve l’elemento che si trova allo stesso livello gerarchico dopo il tag <h5>:
//h5/following-sibling::p
- Applicare la funzione nel foglio di lavoro di Google
Per non perdere la visione d’insieme, inseriamo una riga vuota in alto e immettiamo nuovamente la funzione come riferimento. Questa volta aggiungiamo però un apostrofo all’inizio, in modo che la formula non venga eseguita, ma trattata come testo semplice.
È possibile modificare questa tabella nel modo consueto. Le singole celle contengono i dati effettivi e non la formula.
Excel con Microsoft 365 per le aziende e IONOS!
L'Office che conosci, ma migliorato Ottieni la posta elettronica Exchange e tutte le ultime versioni delle tue applicazioni preferite su tutti i tuoi dispositivi.
Analisi di dati strutturati di siti web
La lista di link appena generata può ora essere analizzata in diversi modi, se necessario. Ad esempio, potremmo aggiungere il meta title, la meta description, la lingua e la codifica per ogni URL individuato, che sono informazioni rilevanti ai fini SEO.
A tale scopo, scriviamo le informazioni XPath nella riga superiore e inseriamo la funzione nella seconda riga (seconda colonna nell’esempio):
=importXML($A2,B$1)
La formula prende l’URL dalla prima colonna e l’XPath dalla riga superiore. Per espandere la formula verso il basso e verso destra, impostiamo la prima colonna e la prima riga come riferimento assoluto (con il simbolo $).
Le voci #NV indicano che le informazioni ricercate non sono state trovate nella pagina web.
Per scollegare la tabella dai siti linkati, possiamo evidenziarla, copiarla e inserirla in un nuovo foglio di calcolo utilizzando la combinazione di tasti [Shift] + [Ctrl] + [V].
Estrazione di contenuto testuale
Grazie ai progressi compiuti nel riconoscimento testuale attraverso l’intelligenza artificiale, nota anche come Natural Language Processing, cresce la necessità di estrarre maggiori quantità di testo per fini di analisi dei siti web.
Un buon esempio sono i quotidiani, gli aggregatori di notizie e le pagine di rassegna stampa, che forniscono informazioni preziose per l’analisi delle tendenze.
Per la nostra dimostrazione applicativa, scegliamo la rassegna stampa newstral.com. Il nostro scopo è semplicemente quello di estrarre un elenco di tutti i comunicati stampa (titoli). Per fare questo, procediamo come segue:
Un buon esempio sono i quotidiani, gli aggregatori di notizie e le pagine di rassegna stampa, che forniscono informazioni preziose per l’analisi delle tendenze.
Per la nostra dimostrazione applicativa, scegliamo la rassegna stampa newstral.com. Il nostro scopo è semplicemente quello di estrarre un elenco di tutti i comunicati stampa (titoli). Per fare questo, procediamo come segue:
- Determinare i contenuti nel codice sorgente del sito web
- Definire XPath
//div[@class="headlines-container"]/ul/li/span/a[@class="headline"]
- Applicare la funzione nel foglio di lavoro di Google
(Cella B1) =importXML(A1,A2)
(Cella B2) =importXML(A1,A3)
Il risultato è una lista di titoli. Il vantaggio è che possiamo aggiornare questa lista in qualsiasi momento con F5 in modo che visualizzi sempre il contenuto più recente.
Volete imparare altri trucchi per Fogli Google? Scoprite qui come creare menu a tendina in Fogli Google.
Importazione di tabelle HTML
Per trasferire una tabella da un sito web a Fogli Google basta una singola formula. Per esempio, prendiamo una tabella sui modelli di Samsung Galaxy da un articolo di Wikipedia: per importare questa tabella, abbiamo bisogno soltanto del tag <table> nell’XPath. Tuttavia, dobbiamo capire quanti tag <table> appaiono davanti alla tabella di nostro interesse. La tabella che vogliamo importare è la terza della pagina web. La formula si presenta quindi così:
=importXML(“https://en.wikipedia.org/wiki/Samsung_Galaxy”, “//table[3]/tbody/*”)
Ecco qua! Con una singola formula nella cella B1, abbiamo importato correttamente nel foglio di calcolo l’intera tabella con tutte le righe e le colonne.
Come vedete, la funzione di importazione “XML to Google Sheets” è estremamente versatile e consente di risparmiare molto tempo e lavoro.
Come vedete, la funzione di importazione “XML to Google Sheets” è estremamente versatile e consente di risparmiare molto tempo e lavoro.
Molte piattaforme di social media e grandi rivenditori online come Amazon vietano il web scraping. Ricordatevi quindi di leggere i termini di utilizzo prima di testare le vostre nuove competenze di web scraping su queste piattaforme.