Esempio n. 1
0
def run_spo():
    try:
        spo(proxy=0)
    except Exception as e:
        sendmail('spo', str(e))
        print("spo:", e)
    gc.collect()
Esempio n. 2
0
def run_blocktrade():
    holiday = [
        '2017-12-30', '2017-12-31', '2018-01-01', '2018-02-15', '2018-02-16',
        '2018-02-17', '2018-02-18', '2018-02-19', '2018-02-20', '2018-02-21',
        '2018-04-05', '2018-04-06', '2018-04-07', '2018-04-29', '2018-04-30',
        '2018-05-01', '2018-06-16', '2018-06-17', '2018-06-18', '2018-09-22',
        '2018-09-23', '2018-09-24', '2018-10-01', '2018-10-02', '2018-10-03',
        '2018-10-04', '2018-10-05', '2018-10-06', '2018-10-07'
    ]
    if str(datetime.date.today()) not in holiday:
        list_date = [datetime.date.today()]
        sqlcheck = "select `交易日期` from `blocktrade` WHERE `交易日期`='%s' LIMIT 1" % (
            str(list_date[0]))
        # scheck = pd.read_sql(sqlcheck,serverconn())
        lcheck = pd.read_sql(sqlcheck, conn())
        times_retry = 5
        # while (scheck.empty == True or lcheck.empty == True) and times_retry != 0:
        while lcheck.empty == True and times_retry != 0:
            try:
                # if scheck.empty == True and lcheck.empty == True:
                #     get_blocktrade(list_date,ser='both',proxy=0)
                # elif scheck.empty ==True and lcheck.empty == False:
                #     get_blocktrade(list_date,ser='server',proxy=0)
                # elif scheck.empty ==False and lcheck.empty == True:
                get_blocktrade(list_date, ser='local', proxy=0)
            except Exception as e:
                if times_retry == 1:
                    sendmail("Blocktrade Update Failed",
                             str(datetime.date.today()) + str(e))
                print("blocktrade:", e)
            finally:
                # scheck = pd.read_sql(sqlcheck, serverconn())
                lcheck = pd.read_sql(sqlcheck, conn())
                times_retry -= 1
    gc.collect()
Esempio n. 3
0
def run_lhb():
    holiday = [
        '2017-12-30', '2017-12-31', '2018-01-01', '2018-02-15', '2018-02-16',
        '2018-02-17', '2018-02-18', '2018-02-19', '2018-02-20', '2018-02-21',
        '2018-04-05', '2018-04-06', '2018-04-07', '2018-04-29', '2018-04-30',
        '2018-05-01', '2018-06-16', '2018-06-17', '2018-06-18', '2018-09-22',
        '2018-09-23', '2018-09-24', '2018-10-01', '2018-10-02', '2018-10-03',
        '2018-10-04', '2018-10-05', '2018-10-06', '2018-10-07'
    ]
    if str(datetime.date.today()) not in holiday:
        sqlcheck = "select `date` from `lhb` WHERE `date`='%s' LIMIT 1" % (
            datetime.date.today())
        # scheck = pd.read_sql(sqlcheck,serverconn())
        lcheck = pd.read_sql(sqlcheck, conn())
        times_retry = 5
        while lcheck.empty == True and times_retry != 0:
            # while (scheck.empty == True or lcheck.empty == True) and times_retry != 0:
            try:
                # if scheck.empty == True and lcheck.empty == True:
                #     lhb(ser='both')
                # elif scheck.empty == True and lcheck.empty == False:
                #     lhb(ser='server')
                # elif scheck.empty == False and lcheck.empty == True:
                lhb()
            except Exception as e:
                if times_retry == 1:
                    sendmail("LHB Update Failed",
                             str(datetime.date.today()) + str(e))
                print("LHB:", e)
            finally:
                # scheck = pd.read_sql(sqlcheck, serverconn())
                lcheck = pd.read_sql(sqlcheck, conn())
                times_retry -= 1
    gc.collect()
Esempio n. 4
0
def run_dayline():
    holiday = [
        '2017-12-30', '2017-12-31', '2018-01-01', '2018-02-15', '2018-02-16',
        '2018-02-17', '2018-02-18', '2018-02-19', '2018-02-20', '2018-02-21',
        '2018-04-05', '2018-04-06', '2018-04-07', '2018-04-29', '2018-04-30',
        '2018-05-01', '2018-06-16', '2018-06-17', '2018-06-18', '2018-09-22',
        '2018-09-23', '2018-09-24', '2018-10-01', '2018-10-02', '2018-10-03',
        '2018-10-04', '2018-10-05', '2018-10-06', '2018-10-07'
    ]
    if str(datetime.date.today()) not in holiday:
        local = conn()
        # server = serverconn()
        sql = "select distinct `date` from `dayline` where `date` ='%s'" % (
            str(datetime.date.today()))
        dfchecklocal = pd.read_sql(sql, local)
        times_retry_local = 10
        while dfchecklocal.empty == True and times_retry_local != 0:
            try:
                print("Updating Local Daybar...")
                daybarlocal = update_bar(conn=local)
                daybarlocal.update_stock()
                daybarlocal.update_index()
                daybarlocal.update_stock_status()
            except Exception as e:
                if times_retry_local == 1:
                    sendmail("Local Dayline Update Failed",
                             str(datetime.date.today()) + str(e))
                    print("Dayline:", e)
                else:
                    pass
            finally:
                dfchecklocal = pd.read_sql(sql, conn())
                times_retry_local -= 1

        # dfcheckserver =pd.read_sql(sql,serverconn())
        # times_retry_server = 10
        # while dfcheckserver.empty == True and times_retry_server != 0:
        #     try:
        #         print("Updating Server Daybar...")
        #         daybarserver = update_bar(conn=server)
        #         daybarserver.update_stock()
        #         daybarserver.update_index()
        #         daybarserver.update_stock_status()
        #     except Exception as e:
        #         if times_retry_local == 1:
        #             sendmail("Server Dayline Update Failed", str(datetime.date.today())+str(e))
        #             print("Dayline:", e)
        #         else:
        #             pass
        #     finally:
        #         dfcheckserver = pd.read_sql(sql, serverconn())
        #         times_retry_server -= 1
        print("Update Daybar Done!")
    gc.collect()
Esempio n. 5
0
def get_statistics():
    holiday = [
        '2017-12-30', '2017-12-31', '2018-01-01', '2018-02-15', '2018-02-16',
        '2018-02-17', '2018-02-18', '2018-02-19', '2018-02-20', '2018-02-21',
        '2018-04-05', '2018-04-06', '2018-04-07', '2018-04-29', '2018-04-30',
        '2018-05-01', '2018-06-16', '2018-06-17', '2018-06-18', '2018-09-22',
        '2018-09-23', '2018-09-24', '2018-10-01', '2018-10-02', '2018-10-03',
        '2018-10-04', '2018-10-05', '2018-10-06', '2018-10-07'
    ]
    if str(datetime.date.today()) not in holiday:
        sqlcheck = "select * from `statistics` WHERE `date` = '%s'" % (str(
            datetime.date.today()))
        # sdfcheck = pd.read_sql(sqlcheck,serverconn())
        ldfcheck = pd.read_sql(sqlcheck, conn())
        times_retry = 5
        # while (sdfcheck.empty == True or ldfcheck.empty == True) and times_retry !=0:
        while ldfcheck.empty == True and times_retry != 0:
            try:
                # if sdfcheck.empty == True and ldfcheck.empty == True:
                #     cal_statistics(ser='both')
                # elif sdfcheck.empty == True and ldfcheck.empty == False:
                #     cal_statistics(ser='server')
                # elif sdfcheck.empty == False and ldfcheck.empty == True:
                cal_statistics()
            except Exception as e:
                if times_retry == 1:
                    sendmail("Statistics Update Error!",
                             str(datetime.date.today()) + str(e))
                print("statistics:", e)
            finally:
                # sdfcheck = pd.read_sql(sqlcheck, serverconn())
                ldfcheck = pd.read_sql(sqlcheck, conn())
                times_retry -= 1
        # if sdfcheck['ontrade'][0] <3000 or ldfcheck['ontrade'][0]<3000 or sdfcheck['ontrade'][0] != ldfcheck['ontrade'][0]:
        if ldfcheck['ontrade'][0] < 3000:

            subject = '【注意】Statistics Error'
            content = '统计出错,请马上检查数据!'
            # if sdfcheck['ontrade'][0] <3000:
            #     subject = subject + ' Server'
            if ldfcheck['ontrade'][0] < 3000:
                subject = subject + ' local'
            # if sdfcheck['ontrade'][0] != ldfcheck['ontrade'][0]:
            #     content = content + ' 两地数据不一致!'
            sendmail(subject, str(datetime.date.today()) + content)
    gc.collect()
Esempio n. 6
0
def run_zdt():
    holiday = [
        '2017-12-30', '2017-12-31', '2018-01-01', '2018-02-15', '2018-02-16',
        '2018-02-17', '2018-02-18', '2018-02-19', '2018-02-20', '2018-02-21',
        '2018-04-05', '2018-04-06', '2018-04-07', '2018-04-29', '2018-04-30',
        '2018-05-01', '2018-06-16', '2018-06-17', '2018-06-18', '2018-09-22',
        '2018-09-23', '2018-09-24', '2018-10-01', '2018-10-02', '2018-10-03',
        '2018-10-04', '2018-10-05', '2018-10-06', '2018-10-07'
    ]
    if str(datetime.date.today()) not in holiday:
        from update_ztdt import updatesql_all
        try:
            updatesql_all()
        except Exception as e:
            sendmail('ztdt', str(e))
            print("ZTDT:", e)
    gc.collect()
Esempio n. 7
0
def run_caldatas():
    holiday = [
        '2017-12-30', '2017-12-31', '2018-01-01', '2018-02-15', '2018-02-16',
        '2018-02-17', '2018-02-18', '2018-02-19', '2018-02-20', '2018-02-21',
        '2018-04-05', '2018-04-06', '2018-04-07', '2018-04-29', '2018-04-30',
        '2018-05-01', '2018-06-16', '2018-06-17', '2018-06-18', '2018-09-22',
        '2018-09-23', '2018-09-24', '2018-10-01', '2018-10-02', '2018-10-03',
        '2018-10-04', '2018-10-05', '2018-10-06', '2018-10-07'
    ]
    if str(datetime.date.today()) not in holiday:
        sql = "select distinct `date` from `usefuldata` where `date` ='%s'" % (
            str(datetime.date.today()))
        dfcheckl = pd.read_sql(sql, conn())
        # dfchecks = pd.read_sql(sql, serverconn())

        times_retry = 10
        # while (dfcheckl.empty == True or dfchecks.empty == True) and times_retry != 0:
        while dfcheckl.empty == True and times_retry != 0:

            try:
                # if dfcheckl.empty == True and dfchecks.empty == True:
                #     calc(ser='both').amorank()
                # elif dfcheckl.empty == True and dfchecks.empty == False:
                calc().amorank()
                # elif dfcheckl.empty == False and dfchecks.empty == True:
                #     calc(ser='server').amorank()
            except Exception as e:
                if times_retry == 1:
                    sendmail("Cal_datas Failed",
                             str(datetime.date.today()) + str(e))
                    print("caldatas:", e)
                else:
                    pass
            finally:
                dfcheckl = pd.read_sql(sql, conn())
                # dfchecks = pd.read_sql(sql, serverconn())
                times_retry -= 1
    gc.collect()