NEWS
Temperaturwert aus einfacher HTML Seite Auslesen.
-
Nicht in der Seite, im parser Adapter
-
Leider kommt nichts raus ?
~~http://patzeservers2016.ddns.net/gb/arbeitsplan/1.png" />
http://patzeservers2016.ddns.net/gb/arbeitsplan/2.png" />~~ -
Hab gerade entdeckt das in der Konfiguration der Wert erkannt wird. Also ist das Problem nur das er nicht angezeigt wird. An was kann das liegen?
-
Leider kann ich deinen Screenshot nicht erkennen.
Steht da bool ???
da muss number stehen.
Ein Intervall von 100 Millisekunden ist auch ziemlich ambitioniert
Gruß
Rainer
-
An was kann das liegen? `
Zum einen ist wohl hinter dem ":" noch ein Zeilenumbruch.Daher würde ich erst einmal nur nach der Zahl parsen (es gibt keine zweite):
(\d+.\d+)
Das wird aber keine negativen Zahlen zurückgeben.
Du kannst übrigen unter https://regex101.com/ selbst ganz einfach reguläre Ausdrücke testen.
-
Zum einen ist wohl hinter dem ":" noch ein Zeilenumbruch. `
Korrekt, steht auch im Regex, der ja auch das korrekte Ergebnis liefert.(\d+.\d+) `
Dieser Regex war auch meine erste Lösung, aber sollte aus irgendeinem Grund einmal ein Ganzzahl ohne dezimaltrenner erscheinen führt das zu einem Fehler.Gruß
Rainer
-
Korrekt, steht auch im Regex, der ja auch das korrekte Ergebnis liefert. `
Das habe ich beim Überfliegen nicht gesehen gehabt. Da hast du natürlich recht.Karl_999 hat geschrieben: ↑
29.08.2018, 19:31
(\d+.\d+)
Dieser Regex war auch meine erste Lösung, aber sollte aus irgendeinem Grund einmal ein Ganzzahl ohne dezimaltrenner erscheinen führt das zu einem Fehler. `
Das stimmt - zumindest nach https://regex101.com/r/4dNX3N/1 - nichtAber für den Fall kann man es auch so schreiben:
(\d+.?\d+)
Und um auch negative negative Zahlen sauber zu parsen gibt es
(-?\d+.?\d+)
Aber immer noch unter der Voraussetzung, dass in der Seite nur eine Zahl auftaucht.
-
Als aller erstes schon einmal danke für die Antworten und Hilfestellungen.
Leider immer noch gleiches Problem mir wird der Wert bei Objekte nicht angezeigt.
Im Adapter in den Einstellungen jedoch schon.
Habe noch einmal Bilder angehängt.
Mit freundlichen grüßen
-
Habe Folgenden Code Verwendet:````
(-?\d+.?\d+) -
Muss mich entschuldigen es funktioniert jetzt
Meine nächste Frage wie bekomme ich es hin das Verschiedene Werte in verschiedenen Zeilen ausgelesen werden können?
Also in diesem Webserver sollen in Zukunft mehrer Werte stehen?
Danke im Voraus
-
Meine nächste Frage wie bekomme ich es hin das Verschiedene Werte in verschiedenen Zeilen ausgelesen werden können?
Also in diesem Webserver sollen in Zukunft mehrer Werte stehen? `
Ich gehe davon aus, dass die Werte in einer Datei stehen.1. Sie müssen maschinell eindeutig identifizierbar sein. Also sollte eine eindeutige Identifikation zum Wert existieren. Das könnten z.B. "Aktuelle Temperatur", "Temperatur Pool" sein
2. Die Parserausdrücke müssen darauf angepasst werden. Mein Ansatz reicht dann nicht mehr. Dann ist der von Hormoran beschriebene Weg passend. Er muss noch um den Namen ergänzt werden:
Aktuelle Temperatur:\n([^\n]+) Pooltemperatur: :\n([^\n]+)
Natürlich einzeln für jeden Wert
-
Die Daten stehen in einer HTML Seite, welche vom Arduino ständig Aktuell gehalten wird.
Dort steht dann: Temperatur: 5.00
Luftfeuchtigkeit: 51
Feuchtigkeit: 12
Diese Werte sollen in iO Broker genutzt werden können um Alarm zu schlagen wenn die Feuchtigkeit zu hoch ist oder Temperatur zu niedrig etc.. wie ich die unterschiedliche Werte in iO Broker bekomme ist noch mein Problem. Momentan steht nur eine Zahl dort soweit Funktioniert das auch aber wie geht es weiter wenn mehr darin steht?
Gesendet von iPhone mit Tapatalk
-
Also in diesem Webserver sollen in Zukunft mehrer Werte stehen? `
Diese Werte sollen in iO Broker genutzt werden `
Also nicht das, was du uns zur Verfügung gestellt hast?Dann stimmt nämlich nicht mehr was Karl postete
@Karl_999:Daher würde ich erst einmal nur nach der Zahl parsen (es gibt keine zweite
`
wie geht es weiter wenn mehr darin steht? `
Dann nimmst du den Quelltext der Website, gibst ihn bei regex101.com ein und testest.
Oder du wartest bis du die Website wirklich fertig hast und fragst dann nochmal.
Gruß
Rainer
-
Alles klar, werde heute weitere Werte integrieren und dir dann schreiben.
Vielen Herzlichen Dank nochmals [emoji847]
Gesendet von iPhone mit Tapatalk
-
So hier meine Fertige HTML Datei. Werter werden wie gesagt ständig vom Arduino erneuert der Rest bleibt alles wie es ist.
Aktuelle Temperatur: 24.60 (Crad) Aktuelle Luftfeuchtigkeit: 57.00 % Aktuelle Helligkeit: 24 Aktuelle Bodenfeuchtigkeit: 0
Jetzt fehlen lediglich die Regex Codes?
-
Ist das wirklich fertig?
fehlen da nicht noch 4 Zeilenumbrüche?
dann nimmst du
:\n([^\n,<]+)
für die drei Werte musst du je eine Regel setzen, bei der du dann die NUM jeweils auf 0,1 oder 2 setzst.
Gruß
Rainer
-
Klar, wieso sollte es nicht fertig sein? :roll:
Erweiterungen wird es immer mal geben, wie ich Lustig bin
Habe wieder das Problem das der Wert einfach nicht in Objekte angezeigt werden will, jedoch bei Parser in den Einstellungen von dem Luftfeuchtigkeit Abschnitt wird der Wert richtig angezeigt.
-
ich finde ein Intervall von einer halben Sekunde absolut unnötig.
Gruß
Rainer
-
Nur zum testen
Gesendet von iPhone mit Tapatalk
-
Wenn du nicht mehr vorhast deinen Code zu ändern, probiere mal diesen RegEx
:\n?([^\n,<]+)
Dann bekommst du 4 Werte (0-3)
Habe wieder das Problem das der Wert einfach nicht in Objekte angezeigt werden will `
Was hast du denn beim letzten mal gemacht, dass du melden konntest:
@pzudematrick:Muss mich entschuldigen es funktioniert jetzt `
Gruß
Rainer