分析九宫格定位
整个九宫格是一个 view
self.driver.find_element_by_id("com.elc:id/gesturepwd_create_lockview")
屏幕大小 x 720, y 1280
九宫格定位 x 80, y 488, width 640 height 1048
计算出大小 x 80 y 488
width = 640-80 width 等于 560
height = 1048-488 height 等于 560
九宫格是正方形
计算出第一个坐标 为了好计算,就把坐标的值全部用整数来计算
p11 = int(x + width / 6), int(y + height / 6) (173, 581)
计算所有的坐标值
定位方式存在一个字典中
a = {
"解锁提示": "com.elc:id/gesturepwd_create_text", "九宫格": "com.elc:id/gesturepwd_create_lockview", "继续": "com.elc:id/right_btn", } lock_pattern = self.driver.find_element_by_id(a["九宫格"]) x = lock_pattern.location.get('x') y = lock_pattern.location.get('y') width = lock_pattern.size.get('width') height = lock_pattern.size.get('height') print(x, y, width, height) offset = width / 6 p11 = int(x + width / 6), int(y + height / 6) p12 = int(x + width / 2), int(y + height / 6) p13 = int(x + width - offset), int(y + height / 6) p21 = int(x + width / 6), int(y + height / 2) p22 = int(x + width / 2), int(y + height / 2) p23 = int(x + width - offset), int(y + height / 2) p31 = int(x + width / 6), int(y + height - offset) p32 = int(x + width / 2), int(y + height - offset) p33 = int(x + width - offset), int(y + height - offset