Cum să convertești HTML în JSON

Sheetize HtmlConverter pentru .NET facilitează parsarea unui fișier HTML și generarea unei reprezentări JSON structurate a datelor de tip foaie de calcul pe care le conține. Convertorul gestionează stiluri inline, imagini încorporate și tabele complexe, producând JSON curat, ce poate fi consumat de API‑uri web, fluxuri de date sau aplicații front‑end.

De ce să convertești HTML → JSON?

  • JSON este independent de limbaj și perfect pentru transmiterea de date tabelare prin HTTP.
  • Îți permite să reutilizezi rapoartele bazate pe HTML ca surse de date pentru dashboarduri, modele de machine‑learning sau aplicații mobile.
  • Păstrează aspectul vizual original al HTML‑ului, expunând în același timp valorile celulelor, formulele și metadatele într-o formă programatică.

Setul principal de caracteristici

  • Extracție completă a tabelelor – sunt capturate rândurile, coloanele, celulele fuzionate și stilurile.
  • Gestionarea resurselor – imaginile și media sunt fie codificate în base64, fie stocate ca fișiere separate la care se face trimitere în JSON.
  • Output personalizabil – poți alege între o structură plată compactă sau un model ierarhic de tip workbook.

Fluxul de conversie (HTML → JSON)

  1. Creează Convertorul – inițializează HtmlConverter.
  2. Setează opțiunile de încărcare – specifică fișierul HTML sursă și, opțional, URI‑ul de bază pentru resursele legate.
  3. Configurează opțiunile de salvare – folosește HtmlSaveOptions pentru a selecta schema JSON, a încorpora resursele și a defini calea de ieșire.
  4. Rulează procesul – apelează HtmlConverter.Process(loadOptions, saveOptions).

Exemplu de cod – HTML în JSON cu imagini încorporate

using Sheetize;

var loadOptions = new LoadOptions
{
    InputFile = @"C:\Docs\Report.html"
};

var saveOptions = new HtmlSaveOptions
{
    OutputFile = @"C:\Output\Report.json"
};

HtmlConverter.Process(loadOptions, saveOptions);

Cum arată JSON‑ul (simplificat)

{
  "sheets": [{
    "name": "Sheet1",
    "rows": [{
      "cells": [{
        "address": "A1",
        "value": "Title",
        "style": { "fontWeight": "bold" }
      }, {
        "address": "B1",
        "value": "Image",
        "image": "data:image/png;base64,iVBORw0KG..."
      }]
    }]
  }]
}

Sfaturi avansate

  • Extracție selectivă – setează HtmlLoadOptions.IncludeElements = new[] { "table", "img" } pentru a ignora markup‑ul nerelevant.
  • Performanță – pentru fișiere HTML mari, activează ParallelProcessing = true în JsonSaveOptions.
  • Serializare personalizată – implementează IJsonConverter pentru a transforma valorile celulelor (de exemplu, date în format ISO‑8601).

Suport extins pentru formate

Pe lângă JSON, același HtmlConverter poate viza MHTML, CSV, EPUB, AZW3, și chiar înapoi la XLSX. Astfel devine o punte universală pentru schimbul de date între ecosistemele web, e‑book și foile de calcul.

Cu acești pași poți transforma în mod fiabil orice raport HTML în JSON curat și consumabil folosind Sheetize HtmlConverter.

 Română