UltKit

Convertitore da HTML a JSON

Si estrae la tabella da una pagina web salvata e la si ottiene in JSON, pronta da scorrere nel codice. Le celle di intestazione danno il nome alle chiavi e ogni riga della tabella diventa un oggetto in un array.

Convertitore di dati

oppure trascina qui File CSV, TSV, TXT … ·

Max 95 MB per file· Fino a 20 file· Eliminati dopo 30 minuti

Output

I file vengono elaborati sui nostri server ed eliminati dopo 30 minuti.

Come usare questo strumento

  1. 1

    Salvare la pagina o la tabella

    Nel browser premere Ctrl+S (Cmd+S su Mac) e conservare il file HTML, oppure copiare il markup della tabella dagli strumenti per sviluppatori in un file .html. Si possono caricare fino a 20 file, da 95 MB ciascuno.

  2. 2

    Scegliere la struttura del JSON

    L'opzione Array di oggetti è già impostata. In Impostazioni avanzate si può portare Struttura JSON su Array di array per un file più compatto, oppure disattivare Formattazione leggibile per ottenere una sola riga.

  3. 3

    Convertire e usare i dati

    Premere Converti in JSON, scaricare il file e caricarlo con JSON.parse in JavaScript, json.load in Python o con qualsiasi client API.

Salvare la pagina, caricare il file .html e ogni riga della tabella torna come oggetto JSON con le celle di intestazione come chiavi.

Quando una tabella web deve diventare JSON

Molti dati utili esistono solo come tabella HTML: una pagina di tassi di cambio, la classifica di un campionato, un report che l'intranet mostra ma non permette di scaricare, una pagina di stato con l'elenco dei server. Il browser li mostra bene, ma chi sviluppa un grafico front-end, o chi testa e ha bisogno di dati di prova, preferisce un array di oggetti.

La soluzione abituale è uno scraper: scaricare la pagina, analizzarla con Beautiful Soup o Cheerio, scorrere le righe, mappare le celle. Vale la pena se la pagina cambia ogni giorno. Per una tabella che serve una volta sola, caricare la pagina salvata è più rapido e non lascia nulla da mantenere.

Esempio di tabella HTML convertita in JSON

Tabella in ingresso con intestazioni th City e Founded, output come Array di oggetti
<table>
  <tr><th>City</th><th>Founded</th></tr>
  <tr><td>Porto</td><td>1123</td></tr>
  <tr><td>Graz</td><td>1128</td></tr>
</table>

[
  { "City": "Porto", "Founded": 1123 },
  { "City": "Graz", "Founded": 1128 }
]

Cosa conserva e cosa scarta la conversione

  • Conservati: testo delle celle, riga di intestazione come chiavi e ordine delle righe
  • Eliminati: CSS, stili inline, classi e la pagina intorno alla tabella
  • Eliminati: immagini e icone nelle celle, che non hanno un valore testuale
  • Le celle con link mantengono il testo visibile, non l'URL sottostante
  • Gli spazi a inizio e fine cella vengono rimossi da Rimuovi gli spazi superflui
  • L'output è in UTF-8, richiesto dalla RFC 8259 per il JSON scambiato tra sistemi

Limiti del convertitore da HTML a JSON

pagine salvate accettate
.html .htm
pagine per lotto
20
per file caricato
95 MB
poi i file vengono eliminati
30 min

HTML e JSON a confronto

HTML

HyperText Markup Language

HTML è il linguaggio di markup del web, descritto per la prima volta da Tim Berners-Lee all'inizio degli anni 1990 e oggi gestito da WHATWG come standard in continua evoluzione. Un file HTML descrive titoli, paragrafi, link, tabelle, immagini e moduli, mentre lo stile deriva di solito dai CSS. Ogni browser lo visualizza, ed è usato anche per i modelli di email e le pagine web salvate. Un singolo file HTML spesso dipende da immagini e fogli di stile esterni, quindi può apparire danneggiato se spostato da solo.

Compressione
–
Trasparenza
–
Animazione
–
Introdotto
1993 · Tim Berners-Lee; maintained by WHATWG
Convertitore HTML

JSON

JavaScript Object Notation

JSON è un formato di testo leggero per dati strutturati, reso popolare da Douglas Crockford all'inizio degli anni 2000 e standardizzato come RFC 8259 ed ECMA-404. Rappresenta oggetti, array, stringhe, numeri, booleani e null con una sintassi semplice e leggibile. È il formato predefinito per le API web, i file di configurazione e lo scambio di dati tra app in quasi tutti i linguaggi di programmazione. Non prevede commenti, date o schemi integrati e i file annidati di grandi dimensioni sono difficili da leggere senza un visualizzatore.

Compressione
–
Trasparenza
–
Animazione
–
Introdotto
2001 · Douglas Crockford
Convertitore JSON

Da HTML si passa a JSON quando una tabella pubblicata per i lettori, in una pagina di report, in una intranet o in un sito di statistiche pubbliche, deve alimentare uno script, una libreria di grafici o un test di API.

I due formati nascono da tradizioni diverse. HTML, descritto per la prima volta da Tim Berners-Lee nel 1991 e oggi mantenuto da WHATWG come standard vivente, definisce la struttura dei documenti per la visualizzazione. JSON, specificato da Douglas Crockford e standardizzato come RFC 8259 ed ECMA-404, contiene solo dati. Passare dal primo al secondo significa soprattutto scartare la presentazione, ed è per questo che il risultato è di solito molto più piccolo della pagina salvata. Per le tabelle arrivate come feed XML e non come pagine web, XML in JSON svolge lo stesso compito.

Domande su HTML in JSON

Il convertitore legge tutta la pagina web o solo le tabelle?

Solo il markup delle tabelle: righe e celle all'interno degli elementi table, tr, th e td. Menu di navigazione, paragrafi e layout a schede costruiti con elementi div non sono dati tabellari, quindi non vengono convertiti in JSON.

Quale riga fornisce le chiavi del JSON?

La riga di intestazione, di norma le celle th in cima alla tabella. Con La prima riga è l'intestazione attiva, il suo testo diventa la chiave di ogni valore sottostante: una colonna intitolata Population produce "Population": "…" in ogni oggetto.

Come vengono gestite le celle con colspan e rowspan?

Una cella unita copre più posizioni della griglia ma contiene un solo valore. Il valore compare solo nella prima posizione, quindi dopo la conversione conviene controllare le colonne estese e colmare i vuoti nel codice se la tabella usa intestazioni unite.

Perché i numeri nel JSON contengono virgole o richiami a note?

Le tabelle web sono scritte per i lettori, quindi una cella può contenere 1,204,000 oppure 8.3[2]. Un numero semplice come 1123 diventa un numero JSON, mentre quelle celle non sono numeri validi e restano stringhe: prima di fare calcoli, eliminare nel codice separatori e note a piè di pagina.

È consentito estrarre una tabella da un sito web?

Dipende dai termini del sito e dai dati, non dal formato del file. Statistiche pubbliche e report esportati in proprio sono i casi più comuni; prima di riutilizzare contenuti altrui conviene verificare i termini.

Si può ottenere un foglio di calcolo invece del JSON?

Sì. HTML in CSV scrive la stessa tabella come righe separate da virgole, che si aprono in Excel, Google Sheets o Numbers.