def main(): tday = datetime.today() t_now = datetime.now() df = read_cmitem("OSPG Config.SINGAPORE.RateChart") tmr = datetime.today()+timedelta(days=1) dstr = tmr.strftime("%Y%m%d") df_official = calcOfficial(df, tday) #stop at 7am Asia time to restart and roll official while True: if t_now < datetime.strptime(dstr+"8", "%Y%m%d%H"): logger.info("started") dfreport = concat([df['Quote'], calcLIVE(df), df_official],axis=1) dfreport["Change"] = dfreport["LIVE"] - dfreport["OFFICIAL"] dfreport["Change"] = dfreport["Change"] #sending email ts = datetime.strftime(datetime.now(), "%d/%m/%Y %H:%M:%S") sender="*****@*****.**" to = ['*****@*****.**','*****@*****.**','*****@*****.**'] #to = ['*****@*****.**'] cc=['*****@*****.**'] html = reporthtml(dfreport, ts) open(r"D:\log.html", "w").write(html) sendemail(html, sender, to, cc, "PriceChangeSnapshot", ts, []) else: tday = datetime.today() if tday.weekday()!=5 or tday.weekday()!=6: tmr = datetime.today()+timedelta(days=1) dstr = tmr.strftime("%Y%m%d") df_official = calcOfficial(df, tday) #loop time.sleep(15*60) t_now = datetime.now()
tday = datetime.today() t_now = datetime.now() df = read_cmitem("OSPG Config.SINGAPORE.RateChart2") tmr = datetime.today()+timedelta(days=1) dstr = tmr.strftime("%Y%m%d") df_official = calcOfficial(df, tday) #stop at 7am Asia time to restart and roll official while t_now < datetime.strptime(dstr+"7", "%Y%m%d%H"): print(t_now) dfreport = concat([df['Quote'], calcLIVE(df), df_official],axis=1) dfreport["Change"] = dfreport["LIVE"] - dfreport["OFFICIAL"] dfreport["Change"] = dfreport["Change"] #sending email ts = datetime.strftime(datetime.now(), "%d/%m/%Y %H:%M:%S") sender="*****@*****.**" #to = ['*****@*****.**','*****@*****.**','*****@*****.**'] to = ['*****@*****.**'] cc=['*****@*****.**'] html = reporthtml(dfreport, ts) open(r"D:\log.html", "w").write(html) sendemail(html, sender, to, cc, "PriceChangeSnapshot", ts, []) #loop time.sleep(15*60) t_now = datetime.now()