一.为什么发这博客
前几天业务需要需要操作云手机进行爬取没办法只有混进airtest官方群边学习边进行开发,蛮简单的东西(可能是我之前会selenium,appuim关系吧),但是群里会有很多问题,关于匹配元素其实很简单.....
我就把我使用经验总结一下
二.单个和多个
'你一定要把它当做一个网页'
匹配一个
poco('xx')
匹配多个
list(pcoc('xx')) #加个ls你可以看的更加清晰加了后也可以用
#for循环也好,切片工具也好你都可以选择
#其实就这么简单
三.元素的后续节点选择
当使用一个元素的属性没法精准匹配到该元素的时候的使用
poco('条件1').下面介绍的方法(条件2)
child
获取当前节点下的子节点,如果是多个获取多个,没有转换list或者不用for循环提取默认提取第一个节点
children
获取子节点,如果是多个获取多个,没有转换list或者不用for循环提取默认提取第一个节点
#那他和child有什么区别呢,只能说用起来有区别child可以选择指定的子节点,而children没法指定
offspring
获取当前节点下的孙节点,如果是多个获取多个,没有转换list或者不用for循环提取默认提取第一个节点
sibling
获取当前节点的兄弟节点
parent
获取当前节点的父节点
元素文本正则匹配
poco(textMatches='正则表达式')
四.元素属性
attr
:获取指定属性
使用
:poco('xx').attr('属性名')
get_text()
:获取文本内容
使用
:poco('xx').get_text()
五.有无元素判断
poco('xx').exists() #判断指定元素是否存在在当前屏幕上
存在:return True
不存在:return False
来源:oschina
链接:https://my.oschina.net/u/4326389/blog/4265008