Пример #1
0
 def send_keys(self, text, keyborad=None):
     log_in_func({"func_args": text})
     if keyborad:
         super(Element, self).send_keys(text, keyborad)
     else:
         super(Element, self).send_keys(text)
     time.sleep(0.5)
Пример #2
0
 def match_in(self, screen):
     match_result = self._cv_match(screen)
     G.LOGGING.debug("match result: %s", match_result)
     log_in_func({"cv": match_result})
     if not match_result:
         return None
     focus_pos = TargetPos().getXY(match_result, self.target_pos)
     return focus_pos
Пример #3
0
    def gen_screen_log(self, element):
        size = element.size
        location = element.location

        x = size['width'] / 2 + location['x']
        y = size['height'] / 2 + location['y']
        jpg_file_name = str(int(time.time())) + '.jpg'
        jpg_path = os.path.join(ST.LOG_DIR, jpg_file_name)
        self.save_screenshot(jpg_path)
        extra_data ={"args": [[x, y]], "screen": jpg_file_name}
        log_in_func(extra_data)
Пример #4
0
 def gen_screen_log(self, element):
     size = element.size
     location = element.location
     x = size['width'] / 2 + location['x']
     y = size['height'] / 2 + location['y']
     jpg_file_name = str(int(time.time())) + '.jpg'
     try:
         jpg_path = os.path.join(ST.LOG_DIR, jpg_file_name)
         self.save_screenshot(jpg_path)
         if "darwin" in sys.platform:
             x, y = x * 2, y * 2
         extra_data = {"args": [[x, y]], "screen": jpg_file_name}
         log_in_func(extra_data)
     except Exception:
         import traceback
         traceback.print_exc()
Пример #5
0
 def gen_screen_log(self, element=None):
     if ST.LOG_DIR is None:
         return None
     jpg_file_name = str(int(time.time())) + '.jpg'
     jpg_path = os.path.join(ST.LOG_DIR, jpg_file_name)
     self.save_screenshot(jpg_path)
     saved = {"screen": jpg_file_name}
     if element:
         size = element.size
         location = element.location
         x = size['width'] / 2 + location['x']
         y = size['height'] / 2 + location['y']
         if "darwin" in sys.platform:
             x, y = x * 2, y * 2
         saved.update({"args": [[x, y]],})
     log_in_func(saved)
Пример #6
0
def try_log_screen(screen=None):
    """
    Save screenshot to file

    Args:
        screen: screenshot to be saved

    Returns:
        None

    """
    if not ST.LOG_DIR:
        return
    if screen is None:
        screen = G.DEVICE.snapshot()
    filename = "%(time)d.jpg" % {'time': time.time() * 1000}
    filepath = os.path.join(ST.LOG_DIR, filename)
    aircv.imwrite(filepath, screen)
    log_in_func({"screen": filename})
Пример #7
0
    def traverse_layer(action, params):
        snapshot()
        if uiobj and 'visibleBounds' in uiobj:
            b = uiobj['visibleBounds']['bottom']
            l = uiobj['visibleBounds']['left']
            r = uiobj['visibleBounds']['right']
            t = uiobj['visibleBounds']['top']

            if params and params[-1] == "topleft":  # 点击识别区域的左上角
                x, y = l, t
            elif params and params[-1] == "bottomright":  # 点击识别区域的右下角
                x, y = r, b
            else:  # 点击中间位置
                x, y = (l + r) / 2, (b + t) / 2

            log_in_func({
                "cv": {
                    "confidence": 1,
                    "result": [x, y],
                    "rectangle": [[l, t], [l, b], [r, b], [r, t]]
                },
                'ret': [x, y],
            })
Пример #8
0
 def assert_text(self, text):
     log_in_func({"func_args": text})
     assert text in self.text.encode("utf-8")
     time.sleep(0.5)
Пример #9
0
 def forward(self):
     super(WebChrome, self).forward()
     log_in_func({"args": ""})
     time.sleep(1)
Пример #10
0
 def back(self):
     super(WebChrome, self).back()
     log_in_func({"args": ""})
     time.sleep(1)
Пример #11
0
 def get(self, address):
     super(WebChrome, self).get(address)
     log_in_func({"args": address})
     time.sleep(2)
Пример #12
0
 def send_keys(self, text):
     log_in_func({"func_args": text})
     super(Element, self).send_keys(text)
     time.sleep(0.5)
Пример #13
0
 def command_layer(action, params):
     traverse_layer(action, params)
     log_in_func({"name": action, 'ret': None})