Ce este acest instrument?
Paginile web prezintă adesea date în interiorul unui element HTML <table> — o pagină de prețuri, o pagină de statistici, o listă preluată prin scraping — dar acel markup nu este direct utilizabil în cod sau într-o foaie de calcul. Acest instrument analizează markup-ul <table> lipit, citește rândul de antet (din <thead>/<th>, sau primul <tr> dacă nu există <thead>), mapează celulele fiecărui rând următor la acele antete și generează un array JSON de obiecte sau un fișier CSV.
Funcționează și invers: lipește un array JSON de obiecte sau text CSV, iar instrumentul generează un tabel HTML structurat corect, cu un <thead> pentru antetele coloanelor și un <tbody> pentru rândurile de date, gata de lipit într-o pagină web sau CMS.
Totul rulează cu DOMParser-ul integrat al browserului — niciun HTML nu este trimis către un server, deci este sigur de folosit cu conținut lipit care include date interne sau sensibile.
Sursă: structura tabelului urmează definiția elementului table din WHATWG HTML Living Standard.
De ce să-l folosești?
- Conversie bidirecțională — tabel HTML în JSON, tabel HTML în CSV, și JSON/CSV înapoi în markup de tabel HTML curat.
- Detectare automată a antetului — funcționează cu markup <thead>/<th> sau un simplu prim <tr> folosit ca rând de antet.
- Fără copiere-lipire mai întâi într-o foaie de calcul — treci direct de la markup-ul tabelului la date structurate.
- Generează rezultat HTML corect cu caractere escapate, deci caractere speciale precum < și & din datele tale nu strică tabelul.
- 100% pe partea clientului — HTML-ul pe care îl lipești (care poate proveni dintr-o pagină internă sau un panou de administrare) nu părăsește niciodată browserul tău.
Cum se folosește
- Pentru a converti un tabel HTML: lipește markup-ul <table>...</table> în prima casetă, apoi apasă „Convert to JSON” sau „Convert to CSV”.
- Verifică rezultatul, apoi copiază-l sau apasă link-ul de descărcare pentru a salva fișierul.
- Pentru a genera un tabel HTML: lipește un array JSON sau text CSV în a doua casetă.
- Apasă „Convert to HTML table” și copiază markup-ul generat în pagina sau CMS-ul tău.
Exemplu
Intrare
<table><tr><th>name</th><th>age</th></tr><tr><td>Alice</td><td>30</td></tr></table>Rezultat
[{"name":"Alice","age":"30"}]Celulele primului rând devin cheile obiectelor; fiecare rând următor devine un element al array-ului, cu valorile preluate ca text.
Sfaturi practice
- Extragerea datelor dintr-un tabel de pe o pagină web: vizualizează sursa paginii sau inspectează elementul, copiază markup-ul <table>...</table> și lipește-l aici în loc să retastezi manual datele.
- Publicarea unui răspuns API ca tabel lizibil pe un site sau într-un CMS: lipește array-ul JSON în a doua casetă și copiază HTML-ul generat direct în blocul rich-text sau HTML al paginii tale.
- Dacă un tabel folosește layout <div> sau CSS grid în loc de markup <table> real, acest instrument nu îl poate analiza — pagina sursă trebuie să folosească taguri HTML de tabel reale.
De ce contează detectarea antetului
Un tabel fără un rând de antet clar este ambiguu — fiecare instrument din aval trebuie să știe care rând definește numele coloanelor înainte de a putea transforma rândurile rămase în înregistrări structurate. Acest instrument rezolvă acea ambiguitate așa cum fac browserele și majoritatea scraper-elor: caută mai întâi o secțiune <thead> explicită și revine la a trata primul rând vizibil ca antet doar când nu există <thead>. Asta menține conversia previzibilă chiar și pentru markup de tabel scris manual sau preluat prin scraping, care omite tagurile mai semantice.
Întrebări frecvente
Funcționează cu tabele care nu folosesc <thead>?
Da. Dacă nu există <thead>, instrumentul revine la a trata chiar primul <tr> din tabel ca rând de antet.
Ce se întâmplă dacă un rând are mai puține celule decât rândul de antet?
Celulele lipsă pentru acel rând sunt lăsate ca șiruri goale în rezultatul JSON sau ca spații goale în CSV, astfel încât structura rândului rămâne intactă în loc să provoace o eroare.
Tagurile imbricate dintr-o celulă, precum <b> sau <a>, sunt păstrate?
Nu — se extrage doar conținutul text vizibil al fiecărei celule. Formatarea inline, link-urile și alte markup-uri imbricate din interiorul unei celule sunt eliminate, rămânând doar textul simplu.
HTML-ul lipit este trimis undeva?
Nu. Analizarea are loc cu DOMParser-ul integrat al browserului, integral pe dispozitivul tău — nimic nu este încărcat pe un server.
Pot face round-trip cu un array JSON prin acest instrument înapoi într-un tabel HTML?
Da — lipește array-ul JSON (sau CSV) în a doua casetă și apasă „Convert to HTML table” pentru a obține înapoi markup <table> valid, corect escapat, cu aceleași chei ca antete de coloană.