Seite 1 von 1

Werte von Webseite auslesen

Verfasst: 29. Mär 2026 12:38
von Tallman
Hallo,
ich möchte von einer Webseite die Werte der PV Prognose auslesen, habe es noch nicht gemacht und scheitere natürlich auch gleich.
Währe nett wenn mich jemand in die richtige Richtung stupsen kann.

Ich arbeite mit Textdateien und habe es mit dem HTTP Binding und REGEX versucht, wird aber wegen Syntaxfehlern nicht geladen

Code: Alles auswählen

Thing http:url:PV_Prog "PV Prognose" [
    baseURL="https://api.forecast.solar/estimate/51.03961/13.66381/60/-90/2", refresh=14400 ] {
    Channels:
        Type number : PV_Prog_heute "PV Prognose heute" [ stateTransformation="REGEX:watt_hours_day<\/th><td class=\"value\"><table class=\"level-1\"><tbody><tr><th>(.*?)<\/td" ]
}
Hier ein Auszug aus der auszulesenden Webseite, es sind verschachtelte Tabellen, die Werte sind in dem Auszug unten 2794 und 2784

Code: Alles auswählen

......able></td></tr><tr><th>watt_hours_day</th><td class="value"><table class="level-1"><tbody><tr><th>2026-03-29</th><td class="value">2794</td></tr><tr><th>2026-03-30</th><td class="value">2784</td></tr></tbody></table></.............
Das einfachste wäre sicher , wenn man auf die Tabellen Felder direkt zugreifen könnte, dazu habe ich aber nix gefunden.

Schonmal Danke und schönen Sonntag noch.
Talli

Re: Werte von Webseite auslesen

Verfasst: 29. Mär 2026 13:46
von Harka
Moin,
die Seite stellt die Daten auch als JSON zur Verfügung (contentType="application/json).
Damit sollte auch eine Auswertung (bei installierter JSONPATH transformation) mit z.B. JSONPATH:$.result.watt_hours_day möglich sein.

Re: Werte von Webseite auslesen

Verfasst: 29. Mär 2026 15:50
von Tallman
Geht auch nicht, wahrscheinlich weil da das Datum noch davor steht.

Code: Alles auswählen

...
    "watt_hours_day": {
      "2026-03-29": 3622,
      "2026-03-30": 3503
    }
    ...

Re: Werte von Webseite auslesen

Verfasst: 29. Mär 2026 17:04
von Harka
Wenn Du das Datum nicht auswerten möchtest bekommst Du mit

Code: Alles auswählen

JSONPATH:$.result.watt_hours_day.*
ein Array [2794, 2784] und anschließend in Profil mit JSONPATH

Code: Alles auswählen

$.[0]
den ersten Wert 2794

Re: Werte von Webseite auslesen

Verfasst: 29. Mär 2026 18:53
von Tallman
Danke, funktioniert , schönen Sonntag noch