Guida
Che cos'è una API nascosta e perché è il modo più affidabile di ottenere dati
Quando una pagina carica prezzi, annunci o risultati di ricerca, quei dati di solito non vivono nell'HTML — arrivano da un endpoint JSON interno che la pagina chiama in background. È la cosiddetta API nascosta. Per dati pubblici e fattuali, leggerla è quasi sempre più affidabile che fare il parsing della pagina renderizzata.
Cosa significa davvero «nascosta»
Niente di losco. Una pagina web moderna è un guscio leggero che, una volta caricato, chiama uno o più endpoint del proprio backend per recuperare il contenuto vero come JSON strutturato. Questi endpoint sono «nascosti» solo nel senso che non sono documentati per un uso esterno e non compaiono nella barra degli indirizzi — ma il tuo browser li usa ogni singola volta che apri la pagina. Fanno parte del modo in cui il sito pubblico ti consegna i suoi dati pubblici.
Perché chiamarla batte il parsing dell'HTML
- Stabilità. Un redesign può riscrivere tutte le classi CSS e rompere uno scraper HTML da un giorno all'altro. Il campo JSON
pricetende a restarepriceredesign dopo redesign. Meno parti in movimento, meno guasti alle 2 di notte. - Dati più puliti. Ricevi campi tipizzati — i numeri come numeri, le date come date, oggetti annidati — invece di estrarre testo da markup formattato e ri-parsarlo. Meno congetture, meno bug nei casi limite.
- Completezza. L'endpoint restituisce spesso più di quanto la pagina mostri: attributi extra, livelli di stock, identificativi, metadati di paginazione. Di frequente ottieni dati più ricchi di quelli visibili.
- Efficienza. Una sola chiamata JSON può restituire ciò che altrimenti richiederebbe il rendering di una pagina intera con immagini e script — cioè un'impronta più leggera e più rispettosa sul sito di origine.
Come trovare una API nascosta (DevTools, Network, XHR)
Puoi farlo da solo in qualsiasi browser, su qualsiasi pagina pubblica, in un paio di minuti:
- Apri la pagina e premi
F12(o clic destro → Ispeziona) per aprire i DevTools. - Vai nella scheda Network e filtra su Fetch/XHR. Così nascondi immagini e script e vedi solo le richieste di dati.
- Ricarica la pagina, o innesca l'azione che ti interessa — cambiare pagina, cercare, aprire un annuncio.
- Osserva le richieste comparire. Clicca quelle che restituiscono JSON e controlla la scheda Response / Preview.
- Quando individui la richiesta la cui risposta contiene i tuoi campi — i prezzi, gli annunci, i risultati di ricerca — hai trovato l'API nascosta. Annotane l'URL, il metodo e i parametri che accetta.
Da lì, il lavoro consiste nel leggere quell'endpoint in modo affidabile: i parametri giusti, una paginazione sensata, un ritmo di richieste rispettoso e la gestione dei casi in cui il sito si aspetta prima una vera sessione browser. Quest'ultima parte è esattamente ciò che copre la mia guida sui siti pubblici protetti da Cloudflare.
Tengo un punto di partenza funzionante in open source: vedi il repository hidden-api-extraction-template per una struttura pulita su cui costruire.
Farlo in modo conforme
Un'API nascosta resta infrastruttura del sito, quindi valgono le stesse regole di qualsiasi accesso a una fonte pubblica:
- Leggi i Termini di Servizio del sito e rispettali. Se vietano l'accesso automatizzato, è un segnale di stop.
- Rispetta
robots.txte ogni limite di frequenza. Distanzia le richieste; non martellare l'endpoint. - Limitati a dati pubblici, fattuali e non-PII — campi di catalogo e annunci, niente informazioni personali e niente dietro un login.
- Tu gestisci e possiedi il feed risultante. Io lo costruisco perché sia un buon cittadino della fonte.