#! /usr/bin/python3 import datetime import re import sys import csv jetzt = datetime.datetime.now() # print(jetzt) # einen Sensor auslesen #/sys/bus/w1/devices/ sensorfile = "/sys/bus/w1/devices/28-0316a21383ff/w1_slave" sensorID = "0316a21383ff" file = open(sensorfile) # 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 # Suche nach YES linecrc = file.readline() match = re.search(": crc=[0-9a-f]{2} (YES|NO)",linecrc) yesno = match.group(1) if yesno != "YES": sys.exit(1) # Temperatur raus linetemp = file.readline() match = re.search(" t=([-0-9]+)",linetemp) temp = match.group(1) temp = float(temp)/1000 file.close() # Schreiben des csv-files file2 = open("badesaison.csv", "a", newline = "") writer = csv.writer(file2, dialect = "excel") writer.writerow([jetzt.strftime("%Y-%m-%d %H:%M"), sensorID, "{:.1f}".format(temp)]) file2.close() print(temp) # Nur für die Ausgabe wird gerundet print('Die Seetemperatur ist {:.1f}°C'.format(temp))