Hallo,
ich lese mit HTTPmod Wetterdaten aus.
Bei der Luftfeuchtigkeit erhalte ich immer einen Wert mit % Zeichen. Dieses % Zeichen bereitet mir immer wieder Fehlereinträge.
Wie kann ich das % Zeichen schon beim auslesen entfernen, oder nicht mit auslesen?
defmod Wetter_DD_WG_akt HTTPMOD http://api.wunderground.com/api/xxxxxxxxxxx/geolookup/conditions/lang:DL/q/DL/birkigt.xml 900
attr Wetter_DD_WG_akt reading02Name Luftfeuchte
attr Wetter_DD_WG_akt reading02XPath-Strict //relative_humidity/text()
Man musste definieren können das nur Zahlen von 0-100 gelesen werden.
Hi,
das geht eventuell mit \d siehe -> https://wiki.selfhtml.org/wiki/Perl/Regul%C3%A4re_Ausdr%C3%BCcke
Gruß Otto
Danke, aber wie verwende ich "\d" ?
So z.B. ..../text(\d)? Das funktioniert aber nicht.
Der Link hilft mir als Anfänger leider auch nicht weiter.
Sorry ich kann bei dem Modul bisher auch nur abschreiben. In meinem DEF für Spritpreise steht folgendes drin:
attr TankeJetRueckmarsdorfer reading03Regex SpritsortenController[^0-9]+([0-9,]+)[^0-9]+Super E5
Wenn ich das auf Deines übertrage, würde ich denken:
attr Wetter_DD_WG_akt reading02Regex relative_humidity[\d]
Aber das ist nur geraten. Einfach am Besten hier nachlesen und probieren, da sind genug Beispiele drin.
https://fhem.de/commandref.html#HTTPMOD
Gruß Otto
Es will nicht. Sobald ich etwas ändere bekomme ich keine Daten mehr.
Nur der Originalzustand will funktionieren.
//relative_humidity/text()
Es ist sicher nur eine Frage der Formatierung. In der Comandoref habe ich leider auch nichts passendes gefunden.
Funktioniert alles nicht:
//relative_humidity/text([\d])
//relative_humidity/([\d])
//relative_humidity([\d])
relative_humidity([\d])
Du hast schon verstanden, dass es ein zusätzliches Attribute ist und nicht deines einfach ersetzt?
Da lag ich mit meinen Versuchen definitiv falsch.
Müssten es dann mit folgenden attr funktionieren? So will es aber leider auch nicht.
attr Wetter_DD_WG_akt reading02Name humidity
attr Wetter_DD_WG_akt reading02Regex relative_humidity[\d]
attr Wetter_DD_WG_akt reading02XPath-Strict //relative_humidity/text()
So funktioniert es:
reading02Regex <relative_humidity>([\d\.]+)
Mein Problem ist aber noch immer nicht gelöst. Die Log wird voll geschrieben mit:
2017.01.30 20:28:10 1: PERL WARNING: Argument "69%" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 2018.
Auch in der logDB erscheint noch immer das %
2017-01-30 20:18:17|Wetter_DD_WG_akt|HTTPMOD|humidity: 69|humidity|69|%
Wie kann ich die Meldung weg bekommen? Kann man in der Plot Datei noch was verbessern?
#logdb Wetter_DD_WG_akt:humidity