69 lines
2.5 KiB
Python
69 lines
2.5 KiB
Python
import requests
|
|
import ast
|
|
from datetime import datetime
|
|
from time import sleep
|
|
import pickle
|
|
import numpy as np
|
|
|
|
|
|
def convert_lghtng_dist(value):
|
|
try:
|
|
return float(value)
|
|
except:
|
|
return np.nan
|
|
|
|
data_url = "http://192.168.1.221/get_livedata_info"
|
|
|
|
data_response = requests.get(data_url)
|
|
|
|
data_dict = ast.literal_eval(data_response.content.decode('utf-8'))
|
|
|
|
den_dict = data_dict['wh25'][0]
|
|
outdoor_dict = data_dict['ch_aisle'][0]
|
|
lroom_dict = data_dict['ch_aisle'][1]
|
|
roffice_dict = data_dict['ch_aisle'][2]
|
|
toffice_dict = data_dict['ch_aisle'][3]
|
|
broom_dict = data_dict['ch_aisle'][4]
|
|
lightning_dict = data_dict['lightning'][0]
|
|
# print(den_dict.keys())
|
|
# print(outdoor_dict.keys())
|
|
# print(lroom_dict.keys())
|
|
# print(roffice_dict.keys())
|
|
# print(toffice_dict.keys())
|
|
# print(broom_dict.keys())
|
|
# print(lightning_dict.keys())
|
|
try:
|
|
with open('saved_data_dict.pkl', 'rb') as f:
|
|
data_dict = pickle.load(f)
|
|
except:
|
|
data_dict = {}
|
|
|
|
datum_dict = {}
|
|
datum_dict['den_temp'] = float(den_dict['intemp'])
|
|
datum_dict['den_humi'] = float(den_dict['inhumi'].strip("%"))/100
|
|
datum_dict['den_pabs'] = float(den_dict['abs'].strip(" inHg"))
|
|
datum_dict['den_prel'] = float(den_dict['rel'].strip(" inHg"))
|
|
datum_dict['lroom_temp'] = float(lroom_dict['temp'])
|
|
datum_dict['lroom_humi'] = float(lroom_dict['humidity'].strip("%"))/100
|
|
datum_dict['lroom_batt'] = int(lroom_dict['battery'])
|
|
datum_dict['roffice_temp'] = float(roffice_dict['temp'])
|
|
datum_dict['roffice_humi'] = float(roffice_dict['humidity'].strip("%"))/100
|
|
datum_dict['roffice_batt'] = int(roffice_dict['battery'])
|
|
datum_dict['toffice_temp'] = float(toffice_dict['temp'])
|
|
datum_dict['toffice_humi'] = float(toffice_dict['humidity'].strip("%"))/100
|
|
datum_dict['toffice_batt'] = int(toffice_dict['battery'])
|
|
datum_dict['broom_temp'] = float(broom_dict['temp'])
|
|
datum_dict['broom_humi'] = float(broom_dict['humidity'].strip("%"))/100
|
|
datum_dict['broom_batt'] = int(broom_dict['battery'])
|
|
datum_dict['outdoor_temp'] = float(outdoor_dict['temp'])
|
|
datum_dict['outdoor_humi'] = float(outdoor_dict['humidity'].strip("%"))/100
|
|
datum_dict['outdoor_batt'] = int(outdoor_dict['battery'])
|
|
datum_dict['lghtng_dist'] = convert_lghtng_dist(lightning_dict['distance'])
|
|
datum_dict['lghtng_date'] = lightning_dict['date']
|
|
datum_dict['lghtng_time'] = lightning_dict['timestamp']
|
|
datum_dict['lghtng_scnt'] = float(lightning_dict['count'])
|
|
datum_dict['lghtng_batt'] = int(lightning_dict['battery'])
|
|
data_dict[int(datetime.now().strftime('%s'))] = datum_dict
|
|
with open('saved_data_dict.pkl', 'wb') as f:
|
|
pickle.dump(data_dict, f)
|