Was macht HTML in Text?
Diese Fähigkeit verwenden, wenn Sie HTML haben – eine gescrapte Seite, einen Newsletter-Text, den Inhalt eines Feed-Eintrags – und einen sauberen, lesbaren Klartext wünschen, ohne beautifulsoup4 oder lxml installieren zu müssen. Eine kleine HTMLParser-Unterklasse entfernt <script>/<style>, wandelt Blockelemente in Zeilenumbrüche um und reduziert Leerzeichen – genau die richtige Form, bevor der Text an ein LLM (weniger Tokens) oder in einen Suchindex geht.
Wann aufrufen
- Der Benutzer sagt: „Hole den Text aus diesem HTML“, „Bereinige diese gescrapte Seite“, „Entferne Tags vor der Zusammenfassung“, „Wandle diesen E-Mail-HTML in Text um“.
- HTML soll an ein Modell oder einen Digest übergeben werden und das Markup ist nur Rauschen.
Wann NICHT aufrufen
- Sie müssen die Struktur erhalten (Tabellen, Links als Markdown) – verwenden Sie dann einen echten HTML-zu-Markdown-Konverter.
- Die Seite wird durch JavaScript gerendert – holen Sie sie zuerst mit einem Headless-Browser, dann konvertieren Sie sie.
Konkretes Beispiel
Benutzereingabe:
Wandle diesen Artikel-HTML in Klartext um, damit ich ihn mit weniger Tokens zusammenfassen kann.
Ausgabe:
# Kopieren Sie assets/htmltext.py in Ihr Projekt, dann:
from htmltext import html_to_text
text = html_to_text(article_html)
summary = call_llm(f"Zusammenfassen:\n{text}")
<script>- und <style>-Blöcke werden komplett entfernt, Block-Tags werden zu Zeilenumbrüchen, und mehrere Leerzeichen/Leerzeilen werden reduziert, sodass das Ergebnis wie Prosa lesbar ist.
Anzuwendendes Muster
- Erstellen Sie eine Unterklasse von
html.parser.HTMLParsermitconvert_charrefs=True, damit Entitäten automatisch dekodiert werden. - Verfolgen Sie eine Skip-Tiefe für
script/style/head, damit deren Text nie in die Ausgabe gelangt. - Fügen Sie Zeilenumbrüche um Block-Tags hinzu, reduzieren Sie dann Leerraum innerhalb der Zeilen und mehrere Leerzeilen.
- Halten Sie es rein (String rein, String raus), damit es trivial unit-testbar ist.
Referenz: assets/htmltext.py.
Quelle
Abgeleitet aus den Scraping- und Digest-Pipelines des Autors. v1.0.0. Siehe auch: [[rss-feed-reader]], [[gemini-cost-tracker]], [[pipeline-orchestrator]].
→ Bauen Sie den vollständig ausführbaren Bot mit Trawlkit.