【已解决】uiautomator2中用xpath如何查找某元素下面的某层级的子元素 – 在路上 您所在的位置:网站首页 uiautomator2爬虫怎么搞 【已解决】uiautomator2中用xpath如何查找某元素下面的某层级的子元素 – 在路上

【已解决】uiautomator2中用xpath如何查找某元素下面的某层级的子元素 – 在路上

2024-06-18 00:42| 来源: 网络整理| 查看: 265

折腾:【未解决】uiautomator2模拟安卓浏览器的百度搜索后去获取和解析搜索结果期间,希望对于:找到 id是results后,找其下的子元素然后去试试各种写法:从当前的xpath下面去找:resultsSelector = d.xpath("//*[@resource-id='results']") titleButtonSelectorList = resultsSelector.xpath("./android.widget.Button[@clickable='true']").all()始终找不到。去搞清楚xpath的写法uiautomator2/XPATH.md at master · openatx/uiautomator2 (github.com)# 多个条件定位, 类似于AND     d.xpath('//android.widget.Button').xpath('//*[@text="私人FM"]')试试:titleButtonSelectorList = resultsSelector.xpath("//android.widget.Button[@clickable='true']").all()依旧是0个找不到# 遍历所有匹配的元素 for el in d.xpath('//android.widget.EditText').all(): 等价于 d.xpath('//*[@resource-id="android:id/list"]/android.widget.TextView').all()是可以用all()的啊直接去写试试titleButtonSelectorList = d.xpath("//*[@resource-id='results']//android.widget.Button[@clickable='true']")结果:可以找到了:再去加上调试,用all(),可以获取到值:titleButtonSelectorList.all()用代码:titleButtonSelectorList = d.xpath("//*[@resource-id='results']//android.widget.Button[@clickable='true']").all()结果,就可以找到元素了【总结】此处,想要找到results下面的button,则对应语法是:titleButtonSelectorList = d.xpath("//*[@resource-id='results']//android.widget.Button[@clickable='true']").all()即可找到对应元素的列表注意:分开写resultsSelector = d.xpath("//*[@resource-id='results']") titleButtonSelectorList = resultsSelector.xpath("//android.widget.Button[@clickable='true']").all()却就是找不到元素。。。暂时不知道为何。

转载请注明:在路上 » 【已解决】uiautomator2中用xpath如何查找某元素下面的某层级的子元素



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有