In meinem letzten Beitrag zum Thema Webscraping mit Home Assistant habe ich dir gezeigt, wie du mit der Standard-Integration Informationen von nahezu beliebigen Webseiten auslesen kannst. Technisch funktioniert das gut, aber heute zeige ich dir eine Methode, die deutlich mächtiger, effizienter und – gerade bei der Fehlersuche – um Welten besser ist: Multiscrape.
Multiscrape ist eine über HACS bereitgestellte, benutzerdefinierte Erweiterung, mit der du Daten von Webseiten, XML- oder JSON-Dateien extrahieren und als Sensoren in Home Assistant nutzen kannst. Vergiss die Limitierungen der normalen Scrape-Integration, denn hier kommt das nächste Level.
Hier findest du das dazugehörige Video von mir:
Warum Multiscrape der Standard-Integration überlegen ist
Die Einrichtung komplexer Scrape-Dienste über YAML ist mit Multiscrape nicht nur übersichtlicher, die Erweiterung bringt auch zwei gewaltige Vorteile mit sich:
Du magst Home Assistant? Dann abonniere kostenlos meine Beiträge mit Tipps, Tricks und Anleitungen rund um Home Assistant:
Follow Home Assistant
Garantiert kein Spam, keine Werbung und immer mit Abmelde-Link, solltest du es dir anders überlegen!
- Höchste Effizienz: Wenn du mit der normalen Integration fünf verschiedene Werte von einer einzigen Seite auslesen willst, sendet Home Assistant fünf separate Anfragen an den Server. Multiscrape lädt die Seite nur ein einziges Mal herunter und extrahiert alle gewünschten Werte direkt aus dieser einen Abfrage. Das schont Ressourcen und verhindert, dass du vom Zielserver blockiert wirst.
- Login- und Formular-Unterstützung: Du möchtest Daten hinter einer Anmeldemaske scrapen? Mit Multiscrape kannst du Zugangsdaten übermitteln, Cookies verarbeiten und dich auf Webseiten einloggen, bevor die eigentlichen Daten ausgelesen werden. Wichtig: Sei dir bewusst, dass deine Login-Daten (Benutzername und Passwort) dabei im Klartext in deiner YAML-Konfiguration gespeichert werden. Nutze Home Assistant Secrets, um zumindest ein zufälliges Erhaschen der Daten zu erschweren.
Der Gamechanger: Geniales Debugging bei Fehlern
Jeder, der schon mal Webseiten-Daten ausgelesen hat, kennt das Problem: Der Quelltext, den Home Assistant im Hintergrund vom Server abruft, sieht oft völlig anders aus als das, was dir dein Browser anzeigt. Die Fehlersuche wird schnell extrem frustrierend. Hier spielt Multiscrape seinen größten Trumpf aus.
Wenn du in deiner Konfiguration den Parameter log_response: true ergänzt, speichert die Erweiterung den exakten Quelltext, die Header und die Cookies, die vom Server kommen, als kleine Textdateien in deinem Home Assistant Dateisystem ab. Du siehst also 1:1, womit Home Assistant arbeitet, und kannst den passenden CSS-Selektor präzise ermitteln.
Zusätzlich stellt Multiscrape eigene Dienste für die Entwicklerwerkzeuge bereit, die das Testen zum Kinderspiel machen:
multiscrape.get_content: Hiermit kannst du dir on-the-fly den Seiteninhalt einer URL direkt in Home Assistant ziehen und analysieren.multiscrape.scrape: Das absolute Highlight! Du kannst deinen YAML-Code (inklusive Regex, Split oder Value Templates) direkt in den Entwicklerwerkzeugen testen. Du siehst sofort, ob dein Code den gewünschten Wert ausgibt, ohne Home Assistant nach jeder kleinen Änderung neu starten zu müssen. Erst wenn dein Code hier perfekt funktioniert, übernimmst du ihn in deineconfiguration.yaml.

⚠️ Wichtiger Hinweis für das Testen von Templates in den Entwicklerwerkzeugen
Wenn du den Dienst multiscrape.scrape zum Testen nutzt, kannst du im Grunde exakt denselben YAML-Code verwenden, der später auch in deine configuration.yaml kommt. Es gibt hierbei jedoch eine kleine, aber entscheidende Ausnahme:
Home Assistant versucht standardmäßig, alle Templates sofort beim Aufrufen eines Dienstes auszuführen (zu „parsen“). Für Felder wie resource oder select ist das völlig in Ordnung. Bei einem value_template führt das jedoch zu Problemen, da dieses Template ja erst auf die frisch gescrapten Daten angewendet werden soll – und die liegen im Moment des Klicks auf „Dienst ausführen“ noch gar nicht vor.
Die Lösung: Um Home Assistant mitzuteilen, dass das Template erst nach dem Scrape-Vorgang von Multiscrape verarbeitet werden darf, musst du die Syntax für den Test in den Entwicklerwerkzeugen leicht abändern. Füge einfach ein Ausrufezeichen (!) in die öffnenden und schließenden Klammern ein:
- Aus
{{wird{!{ - Aus
%}wird%!}
Multiscrape versteht diesen Kniff und wendet das Template zum exakt richtigen Zeitpunkt an. Vergiss aber nicht: Wenn du den Code nach dem erfolgreichen Testen final in deine configuration.yaml kopierst, musst du die Ausrufezeichen wieder entfernen und die reguläre Template-Syntax nutzen!
# So sieht das Value Template zum Testen im Entwicklerwerkzeug aus:
value_template: "{!{ value.split(' ')[0] }!}"
Einrichten und Loslegen
Die Installation erfolgt simpel über HACS. Anschließend definierst du deine Scrape-Aufträge in deiner Konfiguration. Hier ist ein beispielhafter Aufbau für deinen Code:
multiscrape:
- resource: https://www.home-assistant.io
scan_interval: 3600
log_response: true
sensor:
- unique_id: ha_latest_version
name: HA Latest Version
select: ".release-date"
Mit diesen Werkzeugen an der Hand verliert das Scrapen seinen Schrecken und du kannst nahezu jede Information in dein Smart Home integrieren. Ein riesiges Dankeschön geht an den Entwickler Daniel, der diese großartige Integration pflegt – wenn sie dir hilft, lass ihm gerne etwas Support auf seinem GitHub-Repository da!
Produktempfehlungen



