Parsen mit Regex: YES|NO und Temperatur
authorChrisu Jähnl <chrisu@skorzak.priv.at>
Sat, 27 May 2017 21:13:25 +0000 (23:13 +0200)
committerChrisu Jähnl <chrisu@skorzak.priv.at>
Sat, 27 May 2017 21:13:25 +0000 (23:13 +0200)
seewasser.py

index 1697206..323f200 100755 (executable)
@@ -1,7 +1,7 @@
 #! /usr/bin/python3
 
 import datetime
-
+import re
 
 jetzt = datetime.datetime.now()
 
@@ -13,17 +13,23 @@ sensorfile = "/sys/bus/w1/devices/28-0316a21383ff/w1_slave"
 
 file = open(sensorfile)
 
-content = file.read()
-
-file.close()
-
 # Inhalt des Sensors:
 # 64 01 4b 46 7f ff 0c 10 01 : crc=01 YES
 # 64 01 4b 46 7f ff 0c 10 01 t=22250
 
-temp = content[-6:-1]
+# Suche nach YES
+linecrc = file.readline()
+match = re.search(": crc=[0-9a-f]{2} (YES|NO)",linecrc)
+
+# Temperatur raus
+linetemp = file.readline()
+match = re.search(" t=([-0-9]+)",linetemp)
+
+temp = match.group(1)
 temp = float(temp)/1000
 
+file.close()
+
 
 print(temp)