Exemplo n.º 1
0
    def run(self):
        while True:
            try:
                hlist = self.get_husong_list()
                serverTime = int(hlist['serverTime'])
                maxBlockTimes = int(hlist['userConvoyStatus']['maxBlockTimes'])
                blockTimes = int(hlist['userConvoyStatus']['blockTimes'])
                logger.info('blockTimes %d, maxBlockTimes %d'%(blockTimes, maxBlockTimes))
                if blockTimes >= maxBlockTimes:
                    logger.info('Reach maxBlockTimes %d, will exit'%(maxBlockTimes))
                    return
                find = self.find_lanjie_target(hlist['userConvoyStatus']['viewOtherConvoy'], serverTime)
                time.sleep(4)
                if find is not None:
                    res = self.do_lanjie(find)

                # get suaxin cd
                gi = GeneralInfo()
                lanjiecd = max(
                                gi.get_husong_suaxin_CDTime(),
                                gi.get_block_CDTime()
                              )
                if lanjiecd <> 0:
                    sp = lanjiecd - gi.get_serverTime() + 1
                    sp = max(sp , 0)
                    logger.info('sleep cd, will start at %s'%(util.next_time(sp)))
                    time.sleep(sp)
                else:
                    time.sleep(2)

                # suaxin
                logger.info('suaxin husong list')
                self.suaxin_husong_list()
                time.sleep(2)
            except:
                logger.error(traceback.format_exc())
                time.sleep(1200)