Wie lässt sich HTML in JSON umwandeln?

Antwort vom

Du kannst HTML-Inhalte auslesen und als JSON speichern; bloßes Umbenennen der Datei reicht nicht.

Entscheidend ist, welche Inhalte du übernehmen möchtest: beispielsweise Überschriften und Absätze oder den gesamten HTML-Quelltext als Textfeld. Mit JavaScript kannst du HTML zunächst mit DOMParser einlesen und die ausgewählten Daten mit JSON.stringify in JSON umwandeln.

Beispiel: Inhalte als JSON ausgeben

Dieses Beispiel kannst du in der Entwicklerkonsole deines Browsers ausführen. Der HTML-Text ist hier direkt im Beispiel hinterlegt:

const html = "<h1>Hallo</h1><p>Ein Beispieltext.</p>";

const dokument = new DOMParser().parseFromString(html, "text/html");

const daten = {
  titel: dokument.querySelector("h1")?.textContent  "",
  absaetze: Array.from(
    dokument.querySelectorAll("p"),
    absatz => absatz.textContent
  )
};

const json = JSON.stringify(daten, null, 2);
console.log(json);

Der Parser erstellt ein auslesbares Dokument; JSON.stringify erzeugt anschließend den JSON-Text. Das Ergebnis dieses Beispiels lautet:

{
  "titel": "Hallo",
  "absaetze": [
    "Ein Beispieltext."
  ]
}

Kopiere die Ausgabe in eine Textdatei und speichere sie beispielsweise als daten.json.

Unterschied: Daten extrahieren oder HTML aufbewahren

Das Beispiel übernimmt gezielt Textinhalte. Wenn du stattdessen den gesamten HTML-Quelltext als einzelnes Datenfeld aufbewahren möchtest, genügt:

const json = JSON.stringify({ html: html }, null, 2);
console.log(json);

JSON.stringify übernimmt dabei die notwendige Maskierung von Sonderzeichen. Das HTML wird so als Zeichenkette gespeichert, nicht in einzelne Inhaltsfelder zerlegt.

Quellen:

Kategorie: Programmierung Unterkategorien: Webentwicklung

Erstellt mit GPT-6.1 Sol (OpenAI) auf Basis einer aktuellen Websuche.

Verwandte Fragen

Welche Vor- und Nachteile hat PHP und welche Alternativen sind besser?

PHP ist nicht pauschal schlechter: TypeScript bietet frühere Typprüfungen, Python mit Django viele fertige Webfunktionen, jeweils mit eigenen Nachteilen. „Umständlich und nervig&...

Kann man ein Python-3-Programm über HTTP zugänglich machen?

Ein Python-3-Programm lässt sich nicht in HTTP umwandeln, aber über HTTP als Webanwendung zugänglich machen. HTTP ist ein Übertragungsprotokoll, keine Programmiersprache: Dein Pro...

Sind Websites mit weißer Schrift auf schwarzem Hintergrund gut und barrierefrei?

Weiße Schrift auf schwarzem Grund kann barrierefrei sein, macht eine Website aber nicht automatisch gut lesbar oder insgesamt barrierefrei. Entscheidend sind ausreichender Kontrast, individuell...

Wie installiert man WordPress bei STRATO?

WordPress installierst du bei STRATO über den Kunden-Login; der genaue Menüpfad hängt von deinem Hosting-Paket ab. Entscheidend ist der angezeigte Menüpunkt: „WordPress&ldqu...