UltKit

HTML in JSON umwandeln

Holen Sie die Tabelle aus einer gespeicherten Webseite und erhalten Sie sie als JSON zurück, das Ihr Code in einer Schleife durchlaufen kann. Die Kopfzellen benennen die Schlüssel, und jede Tabellenzeile wird zu einem Objekt in einem Array.

Daten-Konverter

oder CSV, TSV, TXT …-Dateien hierher ziehen ·

Max. 95 MB pro Datei· Bis zu 20 Dateien· Gelöscht nach 30 Minuten

Ausgabe

Dateien werden auf unseren Servern verarbeitet und nach 30 Minuten gelöscht.

So verwenden Sie dieses Tool

  1. 1

    Seite oder Tabelle speichern

    Drücken Sie in Ihrem Browser Strg+S (Cmd+S am Mac) und behalten Sie die HTML-Datei, oder kopieren Sie den Markup der Tabelle aus den Entwicklertools in eine .html-Datei. Sie können bis zu 20 Dateien mit je 95 MB hochladen.

  2. 2

    JSON-Struktur wählen

    Array von Objekten ist bereits voreingestellt. Stellen Sie unter Erweiterte Einstellungen die JSON-Struktur auf Array von Arrays um, wenn die Datei kompakter sein soll, oder deaktivieren Sie Formatiert ausgeben, um eine einzelne Zeile zu erhalten.

  3. 3

    Umwandeln und Daten verwenden

    Klicken Sie auf In JSON umwandeln, laden Sie die Datei herunter und lesen Sie sie mit JSON.parse in JavaScript, json.load in Python oder einem beliebigen API-Client ein.

Speichern Sie die Seite, laden Sie die .html-Datei hoch, und jede Tabellenzeile kommt als JSON-Objekt zurück, dessen Schlüssel die Kopfzellen der Tabelle sind.

Wann eine Webtabelle zu JSON werden muss

Viele nützliche Daten gibt es nur als HTML-Tabelle: eine Seite mit Wechselkursen, eine Tabelle der Sportliga, ein Bericht, den Ihr Intranet anzeigt, aber nie zum Download anbietet, eine Statusseite mit allen Servern. Der Browser zeigt sie schön an, doch wer als Frontend-Entwickler ein Diagramm baut oder als Tester Testdaten braucht, möchte stattdessen ein Array von Objekten.

Die übliche Antwort ist ein Scraper: Seite abrufen, mit Beautiful Soup oder Cheerio parsen, die Zeilen durchlaufen, die Zellen zuordnen. Das lohnt sich, wenn sich die Seite täglich ändert. Für eine Tabelle, die Sie nur einmal brauchen, ist das Hochladen der gespeicherten Seite schneller und es bleibt nichts zu pflegen.

Beispiel: HTML-Tabelle in JSON

Eingabetabelle mit th-Kopfzellen City und Founded, Ausgabe als Array von Objekten
<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 }
]

Was bei der Umwandlung erhalten bleibt und was entfällt

  • Erhalten: Zellentext, die Kopfzeile als Schlüssel und die Reihenfolge der Zeilen
  • Verworfen: CSS, Inline-Stile, Klassen und die Seite um die Tabelle herum
  • Verworfen: Bilder und Symbole in Zellen, da sie keinen Textwert haben
  • Zellen mit Links behalten ihren sichtbaren Text, nicht die dahinterliegende URL
  • Leerzeichen am Anfang und Ende von Zellen werden mit Leerzeichen entfernen entfernt
  • Die Ausgabe ist UTF-8, was RFC 8259 für JSON verlangt, das zwischen Systemen ausgetauscht wird

Grenzen der HTML-in-JSON-Umwandlung

gespeicherte Seiten werden akzeptiert
.html .htm
Seiten pro Stapel
20
pro hochgeladener Datei
95 MB
danach werden die Dateien gelöscht
30 Min.

HTML und JSON im Vergleich

HTML

HyperText Markup Language

HTML ist die Auszeichnungssprache des Webs, die Tim Berners-Lee Anfang der 1990er-Jahre erstmals beschrieben hat und die heute von der WHATWG als „Living Standard“ gepflegt wird. Eine HTML-Datei beschreibt Überschriften, Absätze, Links, Tabellen, Bilder und Formulare, während das Aussehen meist per CSS festgelegt wird. Jeder Browser stellt sie dar, und sie wird auch für E-Mail-Vorlagen und gespeicherte Webseiten verwendet. Eine einzelne HTML-Datei hängt oft von externen Bildern und Stylesheets ab und kann deshalb allein verschoben kaputt aussehen.

Komprimierung
–
Transparenz
–
Animation
–
Eingeführt
1993 · Tim Berners-Lee; maintained by WHATWG
HTML-Konverter

JSON

JavaScript Object Notation

JSON ist ein schlankes Textformat für strukturierte Daten, in den frühen 2000er-Jahren von Douglas Crockford populär gemacht und als RFC 8259 und ECMA-404 standardisiert. Es stellt Objekte, Arrays, Zeichenketten, Zahlen, Booleans und null in einfacher, lesbarer Syntax dar. Es ist das Standardformat für Web-APIs, Konfigurationsdateien und den Datenaustausch zwischen Anwendungen in nahezu allen Programmiersprachen. Kommentare, Datumstypen und Schemas sind nicht eingebaut, und große verschachtelte Dateien sind ohne Viewer schwer lesbar.

Komprimierung
–
Transparenz
–
Animation
–
Eingeführt
2001 · Douglas Crockford
JSON-Konverter

HTML wird in JSON umgewandelt, wenn eine Tabelle, die für menschliche Leser veröffentlicht wurde, etwa auf einer Berichtsseite, im Intranet oder auf einer öffentlichen Statistikseite, ein Skript, eine Diagrammbibliothek oder einen API-Test speisen soll.

Die beiden Formate stammen aus unterschiedlichen Traditionen. HTML, 1991 erstmals von Tim Berners-Lee beschrieben und heute von der WHATWG als Living Standard gepflegt, zeichnet Dokumente für die Darstellung aus. JSON, von Douglas Crockford spezifiziert und als RFC 8259 und ECMA-404 standardisiert, enthält nur Daten. Der Weg vom einen zum anderen besteht größtenteils darin, die Darstellung wegzuwerfen, weshalb das Ergebnis meist deutlich kleiner ist als die gespeicherte Seite. Für Tabellen, die als XML-Feeds statt als Webseiten vorliegen, erledigt XML in JSON die passende Aufgabe.

Fragen zu HTML in JSON

Liest der Konverter die ganze Webseite oder nur Tabellen?

Nur Tabellen-Markup: die Zeilen und Zellen innerhalb der Elemente table, tr, th und td. Navigationsmenüs, Absätze und Karten-Layouts aus div-Elementen sind keine tabellarischen Daten und werden daher nicht in JSON umgewandelt.

Aus welcher Zeile stammen die JSON-Schlüssel?

Die Kopfzeile, normalerweise die th-Zellen am Anfang der Tabelle. Ist Erste Zeile ist Kopfzeile aktiviert, wird ihr Text zum Schlüssel für jeden darunterstehenden Wert. Eine Spalte mit der Überschrift Population ergibt also in jedem Objekt "Population": "…".

Wie werden Zellen mit colspan und rowspan behandelt?

Eine verbundene Zelle umfasst mehrere Rasterpositionen, enthält aber nur einen Wert. Dieser Wert steht nur an der ersten Position. Prüfen Sie nach der Umwandlung daher die betroffenen Spalten und füllen Sie Lücken per Code auf, wenn Ihre Tabelle auf verbundenen Kopfzellen beruht.

Warum enthalten Zahlen in meinem JSON Kommas oder Fußnotenzeichen?

Webtabellen sind für Leser geschrieben, daher kann eine Zelle 1,204,000 oder 8.3[2] enthalten. Eine einfache Zahl wie 1123 wird zu einer JSON-Zahl, solche Zellen sind aber keine gültigen Zahlen und bleiben Zeichenketten. Entfernen Sie Tausendertrennzeichen und Fußnotenmarken im Code, bevor Sie rechnen.

Ist es erlaubt, eine Tabelle von einer Website auszulesen?

Das hängt von den Nutzungsbedingungen der Website und von den Daten ab, nicht vom Dateiformat. Öffentliche Statistiken und Ihre eigenen exportierten Berichte sind die üblichen Fälle. Prüfen Sie die Bedingungen, bevor Sie fremde Inhalte weiterverwenden.

Kann ich statt JSON eine Tabellenkalkulation erhalten?

Ja. HTML in CSV schreibt dieselbe Tabelle als kommagetrennte Zeilen, die sich in Excel, Google Sheets oder Numbers öffnen lassen.