🌐 Web ScrapingPro Piano

SCRAPE_BY_CSS_PATH

Estrae contenuto da una pagina web usando un selettore CSS.

Firma della Formula
=SCRAPE_BY_CSS_PATH(url, selector, [attribute], [renderJs])

Restituisce: string or 2D array (multiple matches returned as separate rows)

Panoramica

SCRAPE_BY_CSS_PATH estrae contenuto da qualsiasi pagina web utilizzando selettori CSS standard, la stessa sintassi di query usata dagli sviluppatori web per stilizzare elementi HTML. Puntalo su un URL, fornisci un selettore CSS come ".price", "#title" o "h1", e restituisce il contenuto di testo corrispondente direttamente nel tuo foglio di calcolo. Quando più elementi corrispondono al selettore, ogni risultato viene restituito come una riga separata, facilitando l'estrazione di intere liste di prodotti, link o punti dati in una singola chiamata.

Parametri

ParametroTipoObbligatorioDescrizione
urlstringL'URL completo della pagina web da estrarre (deve includere https:// o http://).
selectorstringSelettore CSS che punta all'elemento/agli elementi da estrarre. Supporta la sintassi CSS standard incluse classi (.class), ID (#id), elementi (h1), attributi ([data-price]), combinatori (div > p) e pseudo-selettori (li:first-child).
attributestringNoAttributo HTML facoltativo da estrarre invece del contenuto di testo. Valori comuni: "href" (URL dei link), "src" (sorgenti immagine/script), "alt" (testo alternativo immagine), "data-*" (attributi dati personalizzati), "content" (valori meta tag).
renderJsbooleanNoFacoltativo. Imposta su TRUE per renderizzare JavaScript prima di estrarre. Richiesto per applicazioni a pagina singola e contenuto caricato dinamicamente. Più lento e usa più crediti rispetto alla modalità standard.

Esempi

1

Estrarre l'intestazione principale da una pagina

Restituisce il contenuto di testo del primo elemento h1 nella pagina. Utile per controllare rapidamente i titoli delle pagine in una lista di URL.

fx
=SCRAPE_BY_CSS_PATH("https://example.com", "h1")

Output

Example Domain
2

Ottenere tutti gli URL dei link di navigazione

Estrae l'attributo href da ogni tag anchor all'interno di un elemento nav. Restituisce più righe se ci sono più link.

fx
=SCRAPE_BY_CSS_PATH("https://example.com", "nav a", "href")

Output

/about
/products
/blog
/contact
3

Estrarre prezzi di prodotti da una pagina e-commerce

Punta agli elementi prezzo annidati all'interno di card prodotto. Restituisce tutti i prezzi corrispondenti come righe separate per un facile confronto.

fx
=SCRAPE_BY_CSS_PATH("https://store.example.com/shoes", ".product-card .price")

Output

$89.99
$129.00
$64.50
$199.99
4

Estrarre meta description per audit SEO

Usa un selettore di attributo per trovare il tag meta description ed estrarre il suo attributo content. Essenziale per audit SEO su larga scala.

fx
=SCRAPE_BY_CSS_PATH("https://example.com", "meta[name='description']", "content")

Output

This is the meta description of the example page.
5

Estrarre elenchi di prodotti renderizzati con JavaScript

Abilita il rendering JavaScript per estrarre da un'applicazione a pagina singola. Il terzo parametro vuoto salta l'argomento attributo, e TRUE attiva il browser headless.

fx
=SCRAPE_BY_CSS_PATH("https://spa-store.example.com", ".item-title", , TRUE)

Output

Wireless Headphones
USB-C Hub
Laptop Stand

Casi d'Uso

E-commerce

Monitoraggio Prezzi Concorrenti

Configura un foglio di calcolo che estrae pagine prodotto della concorrenza quotidianamente usando selettori CSS puntati agli elementi prezzo. Traccia le tendenze dei prezzi nel tempo e ricevi avvisi quando i concorrenti cambiano la loro strategia di prezzo.

Marketing Digitale

Audit Titoli SEO e Meta Tag

Audita centinaia di pagine estraendo i loro tag title, meta description e strutture di intestazione usando selettori CSS. Identifica meta dati mancanti o duplicati, titoli troppo lunghi e pagine senza una corretta gerarchia di intestazioni.

Recruiting

Aggregazione Offerte di Lavoro

Estrai bacheche di lavoro e pagine carriere aziendali per aggregare offerte di lavoro in un singolo foglio di calcolo. Estrai titoli di lavoro, località, fasce salariali e link di candidatura usando selettori CSS mirati per ogni punto dati.

Immobiliare

Tracciamento Annunci Immobiliari

Monitora siti di annunci immobiliari estraendo prezzi, indirizzi, metratura e date di inserzione. Costruisci un foglio di calcolo di analisi di mercato completo che si aggiorna con inventario corrente e dati sui prezzi.

Ricerca

Raccolta Dati per Ricerca Accademica

Raccogli dati strutturati da database di ricerca, portali governativi e siti web istituzionali. Estrai titoli di pubblicazioni, nomi di autori, date e abstract in fogli di calcolo organizzati per revisioni della letteratura.

Brand Management

Prova Sociale e Monitoraggio Recensioni

Traccia recensioni e valutazioni di prodotti su più piattaforme estraendo punteggi di recensione, conteggi recensioni e valutazioni a stelle. Aggrega dati da Amazon, G2, Trustpilot e siti di recensioni specifici del settore.

Suggerimenti Professionali

SUGGERIMENTO

Usa la funzione "Copia selettore" degli strumenti per sviluppatori del browser come punto di partenza, ma semplifica il selettore per renderlo più resistente ai cambiamenti della pagina. Un selettore come ".product-price" è più stabile di "div.container > div:nth-child(3) > span.product-price".

SUGGERIMENTO

Combina con ARRAYFORMULA per estrarre lo stesso selettore su più URL elencati in una colonna. Ad esempio, =ARRAYFORMULA(SCRAPE_BY_CSS_PATH(A2:A10, "h1")) estrarrà l'h1 da ogni URL nelle celle da A2 ad A10.

SUGGERIMENTO

Quando estrai siti e-commerce, punta ad attributi dati come [data-price] o [data-product-id] piuttosto che elementi visivi, poiché gli attributi dati sono più stabili e contengono valori più puliti.

SUGGERIMENTO

Testa prima il tuo selettore CSS nella console del browser usando document.querySelectorAll("tuo-selettore") per verificare che corrisponda agli elementi giusti prima di usarlo nel foglio di calcolo.

SUGGERIMENTO

Per pagine che caricano contenuto in fasi, l'opzione renderJs attende l'evento di caricamento della pagina iniziale. Se il contenuto si carica dopo ulteriori interazioni dell'utente (come cliccare su un pulsante "Carica altro"), potrebbe non essere catturato.

Per impostazione predefinita, la funzione restituisce il contenuto di testo visibile degli elementi corrispondenti. Opzionalmente puoi specificare un parametro attributo per estrarre attributi HTML specifici invece, come "href" per gli URL dei link, "src" per le sorgenti delle immagini, o qualsiasi attributo dati personalizzato. Questo la rende incredibilmente versatile per attività come costruire inventari di link, raccogliere URL di immagini o estrarre attributi di dati strutturati.

Per siti web moderni che si basano pesantemente su JavaScript per renderizzare il loro contenuto (applicazioni a pagina singola, siti React/Vue/Angular, cataloghi di prodotti caricati dinamicamente), abilita il parametro renderJs. Questo istruisce lo scraper a usare un browser headless che esegue completamente JavaScript prima di estrarre il contenuto, assicurando che tu catturi dati che altrimenti sarebbero invisibili nel codice sorgente HTML grezzo. Nota che il rendering JavaScript è più lento e consuma più crediti, quindi abilitalo solo quando la modalità standard restituisce risultati vuoti o incompleti.

SCRAPE_BY_CSS_PATH è ideale per audit SEO, ricerca competitiva, monitoraggio dei prezzi, aggregazione di contenuti e qualsiasi flusso di lavoro in cui è necessario estrarre dati strutturati dal web in Google Sheets senza scrivere codice.

Errori Comuni

No matches found

Causa: Il selettore CSS non corrisponde a nessun elemento nella pagina. Questo accade spesso quando il contenuto della pagina viene caricato tramite JavaScript ma renderJs non è abilitato, o il selettore ha un errore di battitura.

Soluzione: Verifica che il selettore funzioni nella console DevTools del browser con document.querySelectorAll("tuo-selettore"). Se gli elementi esistono nel browser ma la funzione non restituisce nulla, abilita renderJs impostando il quarto parametro su TRUE.

Error: URL and selector are required

Causa: Uno o entrambi i parametri richiesti (url e selector) sono vuoti o mancanti.

Soluzione: Assicurati che sia l'URL che il selettore CSS siano forniti. L'URL deve essere un indirizzo completo incluso il protocollo (https:// o http://). Verifica che i riferimenti di cella non puntino a celle vuote.

Error: Failed to fetch URL

Causa: Il sito web target ha bloccato la richiesta, l'URL non è valido, il server è inattivo o si è verificato un timeout di rete.

Soluzione: Verifica che l'URL sia accessibile nel tuo browser. Alcuni siti web bloccano le richieste automatizzate; prova una pagina diversa sullo stesso sito. Verifica che l'URL includa il protocollo (https://). Se il sito richiede JavaScript, prova ad abilitare renderJs.

Domande Frequenti

Apri la pagina web target in Chrome o Firefox, fai clic destro sull'elemento che vuoi estrarre e seleziona "Ispeziona" o "Ispeziona elemento". Questo apre gli strumenti per sviluppatori del browser con l'elemento HTML evidenziato. Puoi fare clic destro sull'elemento evidenziato nel pannello Elementi e scegliere "Copia > Copia selettore" per ottenere un selettore CSS auto-generato. Per selettori più affidabili, cerca nomi di classe univoci o ID sull'elemento. Ad esempio, se vedi <div class="product-price">$29.99</div>, il tuo selettore sarebbe ".product-price". Evita selettori auto-generati eccessivamente specifici con molti elementi annidati, poiché si rompono facilmente quando il layout della pagina cambia.

Per impostazione predefinita, SCRAPE_BY_CSS_PATH restituisce il contenuto di testo visibile dell'elemento corrispondente, che è ciò che un utente vede sulla pagina. Quando specifichi un parametro attributo, estrae il valore di quell'attributo HTML invece. Ad esempio, un tag anchor <a href="https://example.com" class="link">Clicca qui</a> restituirebbe "Clicca qui" senza un attributo, ma restituirebbe "https://example.com" se imposti l'attributo su "href". Gli attributi comuni includono "href" per i link, "src" per le immagini, "alt" per le descrizioni delle immagini, "content" per i meta tag e qualsiasi attributo personalizzato "data-*".

Abilita renderJs quando il contenuto che vuoi estrarre viene caricato dinamicamente tramite JavaScript. I segnali che ne hai bisogno includono: la funzione restituisce risultati vuoti o "Nessuna corrispondenza trovata" anche se puoi vedere il contenuto nel tuo browser; il sito web è un'applicazione a pagina singola costruita con React, Vue, Angular o framework simili; il contenuto si carica dopo lo scorrimento o dopo un ritardo; oppure la pagina mostra uno spinner di caricamento prima che appaia il contenuto. La modalità standard è più veloce ed economica, quindi prova senza renderJs prima e abilitalo solo se necessario.

Ogni chiamata a SCRAPE_BY_CSS_PATH punta a un selettore CSS, ma quel selettore può corrispondere a più elementi dello stesso tipo (tutti restituiti come righe). Per estrarre diversi tipi di elementi (ad es. sia titoli che prezzi), effettua chiamate di funzione separate con diversi selettori. Puoi combinare selettori CSS con virgole per corrispondere a più tipi di elementi in una chiamata, ad esempio ".title, .price", ma i risultati saranno interlacciati. Per l'estrazione di dati strutturati in cui è necessario mantenere i titoli accoppiati con i loro prezzi, usa colonne separate con un selettore per colonna.

La funzione restituisce fino a 500 elementi corrispondenti per chiamata. Se la pagina contiene più di 500 elementi corrispondenti, vengono restituiti solo i primi 500. Per la maggior parte dei casi d'uso questo è più che sufficiente. Se devi estrarre pagine con numeri estremamente grandi di elementi, considera l'utilizzo di selettori CSS più specifici per restringere i risultati, oppure usa parametri di paginazione se il sito web di destinazione li supporta.

SCRAPE_BY_CSS_PATH accede alle pagine come visitatore anonimo senza cookie o dati di sessione. Non può estrarre contenuto dietro muri di login, paywall o barriere di autenticazione. Lo scraper non supporta l'invio di cookie, header o credenziali. Per contenuti autenticati, dovresti trovare un'API pubblica per quel servizio o usare una fonte dati alternativa. Alcuni siti web offrono API JSON pubbliche o feed RSS che possono fornire i dati di cui hai bisogno senza autenticazione.

Lo scraper effettua richieste HTTP simili a un browser web e non controlla né applica automaticamente le regole robots.txt. Tuttavia, dovresti rivedere e rispettare il file robots.txt del sito web target e i termini di servizio prima di estrarre. L'estrazione eccessiva può portare al blocco del tuo IP. Usa la funzione responsabilmente, evita di estrarre ad alta frequenza e rispetta i limiti di velocità. Unlimited Sheets applica il proprio rate limiting per prevenire abusi.

SCRAPE_BY_CSS_PATH è una funzione autonoma che sostituisce la necessità di IMPORTXML o IMPORTHTML in molti casi. A differenza di IMPORTXML, usa selettori CSS (che sono più intuitivi per la maggior parte degli utenti) piuttosto che espressioni XPath. A differenza di IMPORTHTML, può puntare a qualsiasi elemento sulla pagina, non solo tabelle e liste. Puoi usare SCRAPE_BY_CSS_PATH insieme alle funzioni native di Google Sheets nello stesso foglio di calcolo senza conflitti.

Funzioni Correlate

Inizia a usare SCRAPE_BY_CSS_PATH oggi

Installa Unlimited Sheets per ottenere SCRAPE_BY_CSS_PATH e altre 41 potenti funzioni in Google Sheets.