CodeKitHub
JSON tööriistad

HTML tabelist JSON/CSV teisendaja

Viimati uuendatud:

HTML tabeli JSON-iks teisendamiseks saavad päisrea lahtritest sinu objekti võtmed ja igast järgnevast <tr>-st saab üks objekt — vastupidine teisendus ehitab <thead>/<tbody> tabeli sama struktuuri põhjal. See tööriist teeb teisenduse täielikult sinu brauseris kasutades sisseehitatud DOMParser-it, ilma et andmeid kunagi kuhugi üles laaditaks.


Mis see tööriist on?

Veebilehed esitavad andmeid tihti HTML <table> elemendi sees — hinnaleht, statistikaleht, kraabitud loend — kuid see märgistus pole otse koodis või tabelarvutuses kasutatav. See tööriist parsib kleebitud <table> märgistuse, loeb päisrea (<thead>/<th>-st, või esimesest <tr>-st, kui <thead> puudub), vastavusse iga järgneva rea lahtrid nende päistega, ja väljastab JSON massiivi objektidest või CSV faili.

See töötab ka vastupidises suunas: kleebi JSON massiiv objektidest või CSV tekst ja tööriist genereerib korralikult struktureeritud HTML tabeli <thead>-ga veeru päiste jaoks ja <tbody>-ga andmeridade jaoks, valmis veebilehele või CMS-i kleepimiseks.

Kõik toimub brauseri sisseehitatud DOMParser-iga — ühtegi HTML-i ei saadeta serverisse, seega on see turvaline sisemist või tundlikku andmestikku sisaldava kleebitud sisu jaoks.

Allikas: tabeli struktuur järgib WHATWG HTML Living Standard'i tabeli elemendi definitsiooni.

Miks seda kasutada?

  • Kahesuunaline teisendus — HTML tabel JSON-iks, HTML tabel CSV-ks, ja JSON/CSV tagasi puhtaks HTML tabeli märgistuseks.
  • Automaatne päise tuvastamine — töötab nii <thead>/<th> märgistusega kui ka lihtsa esimese <tr>-ga kasutatuna päisrida.
  • Pole vaja enne tabelarvutusse kopeerida-kleepida — mine otse tabeli märgistusest struktureeritud andmeteni.
  • Genereerib korralikult varjestatud HTML väljundi, seega su andmete erimärgid nagu < ja & ei riku tabelit.
  • 100% kliendipoolne — sinu kleebitud HTML (mis võib pärineda sisemiselt lehelt või administraatoripaneelilt) ei lahku kunagi sinu brauserist.

Kuidas kasutada

  1. HTML tabeli teisendamiseks: kleebi <table>...</table> märgistus esimesse kasti, seejärel klõpsa "Teisenda JSON-iks" või "Teisenda CSV-ks".
  2. Vaata üle väljund, seejärel kopeeri see või klõpsa allalaadimislinki faili salvestamiseks.
  3. HTML tabeli genereerimiseks: kleebi JSON massiiv või CSV tekst teise kasti.
  4. Klõpsa "Teisenda HTML tabeliks" ja kopeeri genereeritud märgistus oma lehele või CMS-i.

Näide

Sisend

<table><tr><th>nimi</th><th>vanus</th></tr><tr><td>Alice</td><td>30</td></tr></table>

Tulemus

[{"nimi":"Alice","vanus":"30"}]

Esimese rea lahtritest saavad objekti võtmed; igast järgnevast reast saab üks massiivi element, mille väärtused võetakse tekstina.

Praktilised näpunäited

  • Andmete eraldamine veebilehe tabelist: vaata lehe lähtekoodi või kontrolli elementi, kopeeri <table>...</table> märgistus ja kleebi see siia, selle asemel et andmeid käsitsi uuesti sisestada.
  • API vastuse avaldamine loetava tabelina saidil või CMS-is: kleebi JSON massiiv teise kasti ja kopeeri genereeritud HTML otse oma lehe rikas-teksti või HTML plokki.
  • Kui tabel kasutab <div>-i või CSS grid paigutust päris <table> märgistuse asemel, ei saa see tööriist seda parsida — lähtelehel peab olema päris HTML tabeli sildid.

Miks päise tuvastamine on oluline

Selge päisereata tabel on ebamäärane — igal järgneval tööriistal on vaja teada, milline rida määratleb veeru nimed, enne kui saab ülejäänud read struktureeritud kirjeteks teisendada. See tööriist lahendab selle ebamäärasuse samamoodi nagu brauserid ja enamik kraapijaid: see otsib kõigepealt selget <thead> sektsiooni ja langeb tagasi esimese nähtava rea päisreana käsitlemisele alles siis, kui <thead>-i pole. See hoiab teisenduse ennustatavana isegi käsitsi kirjutatud või kraabitud tabeli märgistuse jaoks, mis jätab semantilisemad sildid vahele.

Korduma kippuvad küsimused

Kas see töötab tabelitega, mis ei kasuta <thead>-i?

Jah. Kui <thead>-i pole, langeb tööriist tagasi käsitledes tabeli esimest <tr>-i päisreana.

Mis juhtub, kui reas on vähem lahtreid kui päisereas?

Selle rea puuduvad lahtrid jäetakse tühjade sõnedena JSON väljundis või tühjadena CSV-s, seega rea struktuur jääb terveks, selle asemel et veaga lõppeda.

Kas lahtri sees olevad pesastatud sildid, nagu <b> või <a>, säilivad?

Ei — ainult iga lahtri nähtav tekstisisu eraldatakse. Sisemine vormindus, lingid ja teised pesastatud märgistused lahtri sees eemaldatakse ja alles jääb ainult tavalise teksti sisu.

Kas kleebitud HTML saadetakse kuhugi?

Ei. Parsimine toimub brauseri sisseehitatud DOMParser-iga, täielikult sinu seadmes — midagi ei laadita serverisse üles.

Kas ma saan JSON massiivi selle tööriista kaudu tagasi HTML tabeliks teisendada?

Jah — kleebi JSON massiiv (või CSV) teise kasti ja klõpsa "Teisenda HTML tabeliks", et saada tagasi kehtiv, korralikult varjestatud <table> märgistus samade võtmetega veeru päistena.

Seotud tööriistad