Ausgabe in csv datei
[chrisu/seepark.git] / seewasser.py
1 #! /usr/bin/python3
2
3 import datetime
4 import re
5 import sys
6 import csv
7
8 jetzt = datetime.datetime.now()
9
10 # print(jetzt)
11
12 # einen Sensor auslesen
13 #/sys/bus/w1/devices/
14 sensorfile = "/sys/bus/w1/devices/28-0316a21383ff/w1_slave"
15 sensorID = "0316a21383ff"
16 file = open(sensorfile)
17
18 # Inhalt des Sensors:
19 # 64 01 4b 46 7f ff 0c 10 01 : crc=01 YES
20 # 64 01 4b 46 7f ff 0c 10 01 t=22250
21
22 # Suche nach YES
23 linecrc = file.readline()
24 match = re.search(": crc=[0-9a-f]{2} (YES|NO)",linecrc)
25
26 yesno = match.group(1)
27 if yesno != "YES":
28     sys.exit(1)
29
30 # Temperatur raus
31 linetemp = file.readline()
32 match = re.search(" t=([-0-9]+)",linetemp)
33
34 temp = match.group(1)
35 temp = float(temp)/1000
36
37 file.close()
38 # Schreiben des csv-files
39 file2 = open("badesaison.csv", "a", newline = "")
40 writer = csv.writer(file2, dialect = "excel")
41 writer.writerow([jetzt.strftime("%Y-%m-%d %H:%M"), sensorID, "{:.1f}".format(temp)])
42
43 file2.close()
44
45
46 print(temp)
47
48 # Nur für die Ausgabe wird gerundet
49 print('Die Seetemperatur ist {:.1f}°C'.format(temp))