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



