Hallo zusammen ,
ich versuche mit Multiscrape die Füllstandswerte einer Regenwasserzisterne auszulesen, dessen Messsystem einen einfachen Webserver integriert hat.
Mein Problem ist momentan, dass der Webserver den aktuellen Füllstand bei Werten über 1000 Liter mit einem Tausenderpunkt versieht, sodass aus 3.200 Liter in der Anzeige dann 3.2 Liter werden. Ich kann den Sensorwert auch nicht mit 1000 multiplizieren, da sonst aus 900 Litern, 900 000 Liter werden.
Am einfachsten wäre es, einen eventuell vorhanden Punkt einfach zu eliminieren.
Kennt jemand dafür einen passenden Formatierungsbefehl?
Moin,
willkommen hier in der Community.
Ich habe Multiscrape noch nicht benutzt aber hast du es mal damit replace(".","")
probiert?
Sollte dann ungefähr so aussehen:
value_template: '{{ <deintemplate> | replace(".","") }}'
LG
Tobi
Hallo Tobi,
vielen Dank für den Tipp.
Leider habe ich damit nicht den gewünschten Erfolg gehabt.
Ich habe den Befehl folgendermaßen eingebaut:
resource: http://192.168.178.185/
scan_interval: 3600
sensor:
unique_id: aktueller_fuellstand
name: aktueller Füllstand
select: td.r:nth-child(2)
value_template: '{{ <deintemplate> | replace(".","") }}'
value_template: '{{value.split("L")[0]}}'
unit_of_measurement: "l"
Das File heißt multiscrape.yaml und wird in der configuration.yaml aufgerufen,
so dass ich nicht dauernd im Configurations-File rumwurschteln muss.
Die configuration.yaml ist recht übersichtlich:
# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:
# Text to speech
tts:
- platform: google_translate
group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
multiscrape: !include multiscrape.yaml
…außer der letzten Zeile ist nichts von mir!
Der von dir vorgeschlagenen Befehl zeigt keine Wirkung (auch keine Fehlermeldung).
Vielleicht als Anhaltspunkt ein Screenshot des Web-Interfaces der Regenwasserzisterne:
Leider kann man die Wirkung der Befehle nicht sofort überprüfen, weil man immer erst den Homeassistant neu starten muß, oder gibt es da einen Trick?
Grüße
Roland
Nur ne Idee : warum „scrapst“ (ich liebe Denglish ) du nicht den Prozentwert und rechnest auf die 4000 l um ?
Müsste es nicht
value_template: '{{ value | replace(".","") }}'`
heißen. <deintemplate>
musst du natürlich ändern.
Das sollte dann so aus sehen:
resource: http://192.168.178.185/
scan_interval: 3600
sensor:
unique_id: aktueller_fuellstand
name: aktueller Füllstand
select: td.r:nth-child(2)
value_template: '{{ value.split("L")[0] | replace(".","") }}'
unit_of_measurement: "l"
Kleiner Tipp fürs nächste mal:
gleich dein Code vom Sensor Posten dann hätte ich dir das gleich so gepostet wie ich es jetzt gemacht habe.
LG
Tobi
Hallo Tobi,
hat funktioniert.
Vielen Dank und schöne Tage noch.
Grüße
Roland