Esempio n. 1
0
    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
Esempio n. 2
0
 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))
Esempio n. 3
0
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'点击"立即登录 "按钮.')
Esempio n. 4
0
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)
Esempio n. 5
0
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)
Esempio n. 6
0
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()))