一、等待UI元素
poco等待UI元素的方式有三种:等待一个元素,等待多个元素,等待任一元素node
代码示例: #定位三个元素 ele1 = poco(text=“text_content_1”) ele2 = poco(text=“text_content_2”) ele3 = poco(text=“text_content_3”) 等待一个元素出现:ele1.wait_for_appearance(timeout=10) 等待多个元素都出现:poco.wait_for_all([ele1,ele2,ele3]) 等待任一元素出现:poco.wait_for_any([ele1,ele2,ele3])
二、滑动或拖动android
poco(text='比赛').drag_to(poco(text='开始')) #把比赛元素拖动到开始元素上(拖拽) poco.swipe([0.9, 0.2], [0.1, 0.2],duration=0.3)...............滑动屏幕时停留0.3秒(起点,终点)
三、UI元素属性获取shell
a=poco("android.widget.Button").attr('name').....................提取指定元素属性为name的值
4.获取父节点下 的子节点微信
#children()获取子节点app
node_my=poco("android:id/content").child("android.widget.LinearLayout").children()
for node in node_my:#........遍历子节点
index_my = node.get_text()
print(index_my)编辑器
5.按住拖拽ui
ui1=poco("ui1") ui2=poco("ui2") ui1.start_gesture().hold(1).to(ui2).hold(1).up() #在ui1元素上按下,等待1秒,拖拽到ui2元素上再等1秒,最后抬起释放
6.在子节点下返回上级(多级)spa
#返回多级并获取值
icon=poco(text="朋友圈").parent().parent().parent()#返回上级(这里表示返回三级) icon2=icon.sibling()#sibling()获取当前节点的兄弟节点(第4级)
for i in icon2: print(i.attr('name')) print ('朋友圈图标节点name值:{},size值: {}'.format(i.attr('name'),i.attr('size')))
7.判断手机是否安装了微信code
pkg_list = shell("pm list packages") if "com.tencent.mm" in str(pkg_list): print("已安装微信")
8.在文本编辑器使用截图方式判断orm
if exists(Template(r"tpl1570614636993.png", record_pos=(0.425, -0.849), resolution=(720, 1280))): print('进入游戏成功') else: print('进入游戏失败')
9.如何遍历当前界面中是否存在某个控件
#用于初始化脚本运行环境 for x in range(10): Close = poco("控件") if Close.exists() Close.click() else: break
10 图像模式
if wait(Template(r"tpl1568978563547.png", record_pos=(-0.022, 0.274), resolution=(720, 1280)),5): #........................在5秒内找不到元素则异常(不指定时间默认为20秒)
touch((125.0,1038.0)).........坐标点击
11.poco模式
if poco(text="赞成并进入游戏").wait(10).exists(): #...................10内找不到元素就判断失败