SCRAPE_BY_CSS_PATH
Estrae contenuto da una pagina web usando un selettore CSS.
=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
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
url | string | Sì | L'URL completo della pagina web da estrarre (deve includere https:// o http://). |
selector | string | Sì | Selettore 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). |
attribute | string | No | Attributo 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). |
renderJs | boolean | No | Facoltativo. 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
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.
=SCRAPE_BY_CSS_PATH("https://example.com", "h1")Output
Example DomainOttenere 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.
=SCRAPE_BY_CSS_PATH("https://example.com", "nav a", "href")Output
| /about |
| /products |
| /blog |
| /contact |
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.
=SCRAPE_BY_CSS_PATH("https://store.example.com/shoes", ".product-card .price")Output
| $89.99 |
| $129.00 |
| $64.50 |
| $199.99 |
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.
=SCRAPE_BY_CSS_PATH("https://example.com", "meta[name='description']", "content")Output
This is the meta description of the example page.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.
=SCRAPE_BY_CSS_PATH("https://spa-store.example.com", ".item-title", , TRUE)Output
| Wireless Headphones |
| USB-C Hub |
| Laptop Stand |
Casi d'Uso
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.
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.
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.
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.
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.
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
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".
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.
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.
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.
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 foundCausa: 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 requiredCausa: 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 URLCausa: 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
SCRAPE_BY_XPATH
Estrae contenuto usando espressione XPath (usa browser headless per rendering JS).
SCRAPE_BY_REGEX
Estrae contenuto da una pagina web usando un pattern di espressione regolare.
AI_SCRAPE
Scrape a URL and extract structured data using AI and natural language
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.