def add(self): score = self.cal_score() key = ConstDB0.dev_gateways + hexlify(self.dev_eui).decode() if not db0.execute_command('zadd', key, 'NX', score, self.gateway_mac_addr): Logger.debug(action='DevGateway', type=IDType.device, id=self.dev_eui, msg='zadd %s, %s already exists' % (key, hexlify(self.gateway_mac_addr).decode())) pre_score = db0.zscore(key, self.gateway_mac_addr) if score > pre_score: print(type(score)) db0.zadd(key, score, self.gateway_mac_addr) Logger.debug(action='DevGateway', type=IDType.device, id=self.dev_eui, msg='zadd %s, %s refresh from %s to %s' % (key, hexlify(self.gateway_mac_addr).decode(), pre_score, score)) return True else: return False return True
def _run(self): self.ps.subscribe(CHANNEL_TX_ACK) try: for i in range(0, 3): start = time.time() while time.time() - start < 0.1: sleep(0.05) for item in self.ps.listen(): # item = self.ps.get_message(timeout=0.05) Logger.debug(action=Action.resend, type=IDType.ip_addr, id=self.pull_info.ip_addr, msg='Get Publish TX, %s' % item) if item is not None and item['data'] == self.token: Logger.info(action=Action.resend, type=IDType.ip_addr, id=self.pull_info.ip_addr, msg='Get Publish TX, %s' % item) self.ps.unsubscribe() self.ps.close() return self.server.sendto(self.packet, self.pull_info.ip_addr) Logger.error(action=Action.resend, type=IDType.ip_addr, id=self.pull_info.ip_addr, msg='Resend data %s : %s' % (i, self.packet)) Logger.error( action=Action.resend, type=IDType.gateway, id=self.pull_info.ip_addr, msg='No TX_ACK got, PULL_RESP may not received by gateway') except Exception as error: logger.error(str(error)) finally: try: self.ps.unsubscribe() self.ps.close() except Exception as error: logger.error(str(error))
class SearchPage(Basepage): def rec_search_input(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'找到搜索Input.') return self.find_element(selector='id=>kw') def rec_search_btn(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'找到百度一下Input.') return self.find_element(selector='id=>su') def click_search_btn(self): self.rec_search_btn().click() self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'点击"立即登录 "按钮.')
class LoginPage(Basepage): def rec_user_input(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'找到"请输入手机号"输入input.') return self.find_element( selector='x=>//*[@id="main"]/div/div[2]/div/div[2]/div[1]/input') def rec_passwd_input(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'找到"请输入密码密码"输入input.') return self.find_element( selector='x=>//*[@id="main"]/div/div[2]/div/div[2]/div[2]/input') def rec_login_btn(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'找到"登录"按钮.') return self.find_element( selector='x=>//*[@id="main"]/div/div[2]/div/div[2]/div[4]/button') def click_login_btn(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.rec_login_btn().click() self.logger.debug(u'点击"登录 "按钮.') return MainPage(self.driver)
class LoginPage(Basepage): def rec_user_input(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'找到"用户名"输入input.') return self.find_element(selector='id=>loginmodel-username') def rec_passwd_input(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'找到"密码"输入input.') return self.find_element(selector='id=>loginmodel-password') def rec_capcha_input(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'找到"验证码"输入input') return self.find_element(selector='id=>loginmodel-verifycode') def dow_capcha(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'下载验证码') captcha_png = self.find_element( selector='id=>captchaimg').screenshot_as_png with open("captcha.png", "wb+") as f: f.write(captcha_png) f.close() def rec_login_btn(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.logger.debug(u'找到"登录"按钮.') return self.find_element(selector='name=>login-button') def click_login_btn(self): self.logger = Logger(loggername=self.__class__.__name__).get_logger() self.rec_login_btn().click() self.logger.debug(u'点击"登录 "按钮.') def click_capche(self): self.find_element(selector='id=>captchaimg').click() def rec_p(self): return self.find_element( selector='xpath=>//*[@id="user-login"]/div/div/div[4]/div/div[2]/p' ) def get_main_page(self): return MainPage(self.driver)
import time from utils.log import Logger logger = Logger("log_test") if __name__ == "__main__": while True: time.sleep(3) logger.debug("TEST FORM LOGGER! %s" % int(time.time()))