Sapevi che è possibile estrarre dati da un sito Web utilizzando Fogli Google? Ecco come puoi farlo.

Il web scraping è una tecnica potente per estrarre informazioni dai siti Web e analizzarle automaticamente. Sebbene sia possibile farlo manualmente, può essere un compito noioso e dispendioso in termini di tempo. Gli strumenti di web scraping rendono il processo più veloce ed efficiente, pur costando meno.

È interessante notare che Fogli Google ha il potenziale per diventare il tuo strumento di scrapping web unico, grazie alla sua funzione IMPORTXML. Con IMPORTXML puoi facilmente estrarre dati dalle pagine Web e utilizzarli per analisi, reporting o qualsiasi altra attività basata sui dati.

La funzione IMPORTXML in Fogli Google

Fogli Google fornisce una funzione integrata chiamata IMPORTXML, che ti consente di importare dati da formati web come XML, HTML, RSS e CSV. Questa funzione può cambiare le regole del gioco se desideri raccogliere dati da siti Web senza ricorrere a codifiche complesse.

instagram viewer

Ecco la sintassi di base di IMPORTXML:

=IMPORTXML(url, xpath_query)
  • URL: l'URL della pagina Web da cui desideri recuperare i dati.
  • xpath_query: la query XPath che definisce i dati che desideri estrarre.

XPath (XML Path Language) è un linguaggio utilizzato per navigare nei documenti XML, incluso HTML, consentendo di specificare la posizione dei dati all'interno di una struttura HTML. Comprendere le query XPath è essenziale per utilizzare correttamente IMPORTXML.

Comprendere XPath

XPath fornisce varie funzioni ed espressioni per navigare e filtrare i dati all'interno di un documento HTML. Una guida completa su XML e XPath va oltre lo scopo di questo articolo, quindi ci accontenteremo di alcuni concetti XPath essenziali:

  • Selezione degli elementi: È possibile selezionare gli elementi utilizzando / E // per denotare percorsi. Per esempio, /html/body/div seleziona tutti gli elementi div nel corpo di un documento.
  • Selezione degli attributi: Per selezionare gli attributi, è possibile utilizzare @. Per esempio, //@href seleziona tutto href attributi sulla pagina.
  • Filtri predicativi: puoi filtrare gli elementi utilizzando i predicati racchiusi tra parentesi quadre ([ ]). Ad esempio, /div[@class="container"] seleziona tutto div elementi con la classe contenitore.
  • Funzioni: XPath fornisce varie funzioni come contiene(), inizia con(), E testo() per eseguire azioni specifiche come il controllo del contenuto del testo o dei valori degli attributi.

Come estrarre XPath da un sito Web

Finora conosci la sintassi IMPORTXML, conosci l'URL del sito Web e sai quale elemento vuoi estrarre. Ma come si ottiene l'XPath dell'elemento?

Non è necessario conoscere a memoria la struttura di un sito Web per estrarne i dati con IMPORTXML. In effetti, ogni browser ha uno strumento ingegnoso che ti consente di copiare istantaneamente l'XPath di qualsiasi elemento.

Lo strumento Ispeziona elemento ti consente di estrarre XPath dagli elementi del sito web. Ecco come:

  1. Passa alla pagina Web che desideri raschiare utilizzando il tuo browser Web preferito.
  2. Individua l'elemento che desideri raschiare.
  3. Fare clic con il tasto destro sull'elemento.
  4. Selezionare Ispeziona elemento dal menu contestuale. Il tuo browser aprirà un pannello che visualizza il codice HTML della pagina web. L'elemento HTML rilevante verrà evidenziato nel codice.
  5. Nel pannello Ispeziona elemento, fai clic con il pulsante destro del mouse sull'elemento evidenziato nel codice HTML.
  6. Clic Copia XPath per copiare l'indirizzo XPath dell'elemento negli appunti.

Ora che hai tutto ciò di cui hai bisogno, è il momento di vedere IMPORTXML in azione e di creare alcuni collegamenti.

Puoi utilizzare IMPORTXML per estrarre tutti i tipi di dati dai siti Web. Ciò include collegamenti, video, immagini e quasi tutti gli elementi del sito web. I collegamenti sono uno degli elementi più importanti nell'analisi web e puoi imparare molto su un sito web semplicemente analizzando le pagine a cui si collega.

IMPORTXML ti consente di recuperare rapidamente i collegamenti in Fogli Google e quindi analizzarli ulteriormente utilizzando le varie funzioni offerte da Fogli Google.

Per estrarre tutti i collegamenti da una pagina Web, è possibile utilizzare la seguente formula:

=IMPORTXML(url, "//a/@href") 

Questa query XPath seleziona tutto href attributi di UN elementi, estraendo di fatto tutti i collegamenti sulla pagina.

=IMPORTXML("https://en.wikipedia.org/wiki/Nine_Inch_Nails", "//a/@href")

La formula sopra rimuove tutti i collegamenti in un articolo di Wikipedia.

È una buona idea inserire l'URL della pagina web in una cella separata e quindi fare riferimento a quella cella. Ciò eviterà che la formula diventi troppo lunga e ingombrante. Puoi fare lo stesso con la query XPath.

2. Raschiare tutti i testi dei collegamenti

Per estrarre il testo dei collegamenti insieme ai relativi URL, puoi utilizzare:

=IMPORTXML(url, "//a") 

Questa query seleziona tutti gli elementi e puoi estrarre il testo del collegamento e gli URL dai risultati.

=IMPORTXML("https://en.wikipedia.org/wiki/Nine_Inch_Nails", "//a")

La formula sopra ottiene i testi dei collegamenti nello stesso articolo di Wikipedia.

A volte, potrebbe essere necessario individuare collegamenti specifici in base a criteri. Ad esempio, potresti essere interessato a estrarre collegamenti che contengono una particolare parola chiave o collegamenti che si trovano in una sezione specifica della pagina.

Con un'adeguata conoscenza di XPath, puoi individuare qualsiasi elemento che stai cercando.

Per individuare i collegamenti che contengono una parola chiave specifica, è possibile utilizzare la funzione XPath contiene():

=IMPORTXML(url, "//a[contains(@href, 'keyword')]/@href") 

Questa query seleziona gli attributi href degli elementi in cui href contiene la parola chiave specificata.

=IMPORTXML("https://en.wikipedia.org/wiki/Nine_Inch_Nails", "//a[contains(@href, 'record')]/@href")

La formula sopra elimina tutti i collegamenti che contengono la parola record nel loro testo all'interno di un articolo di Wikipedia di esempio.

Per estrarre collegamenti da una particolare sezione di una pagina, è possibile specificare l'XPath della sezione. Per esempio:

=IMPORTXML(url, "//div[@class='section']//a/@href") 

Questa query seleziona gli attributi href degli elementi all'interno degli elementi div con la classe "sezione".

Allo stesso modo, la formula seguente seleziona tutti i collegamenti all'interno della classe div che hanno la classe mw-content-container:

=IMPORTXML("https://en.wikipedia.org/wiki/Nine_Inch_Nails", "//div[@class='mw-content-container']//a/@href")

Vale la pena notare che puoi utilizzare IMPORTXML per qualcosa di più del web scraping. È possibile utilizzare la famiglia di funzioni IMPORT per importare tabelle di dati da siti Web a Fogli Google.

Sebbene Fogli Google ed Excel condividano la maggior parte delle loro funzioni, la famiglia di funzioni IMPORT è unica per Fogli Google. Dovrai considerare altri metodi per farlo importare dati da siti Web in Excel.

Semplifica il Web Scraping con Fogli Google

Il web scraping con Fogli Google e la funzione IMPORTXML è un modo versatile e accessibile per raccogliere dati dai siti web.

Padroneggiando XPath e comprendendo come creare query efficaci, puoi sbloccare tutto il potenziale di IMPORTXML e ottenere informazioni preziose dalle risorse web. Quindi, inizia a eseguire lo scraping e porta la tua analisi web al livello successivo!