折腾:
【未解决】uiautomator2模拟安卓浏览器的百度搜索后去获取和解析搜索结果
期间,希望对于:

找到 id是results后,找其下的子元素
然后去试试各种写法:
从当前的xpath下面去找:
resultsSelector = d.xpath("//*[@resource-id='results']") titleButtonSelectorList = resultsSelector.xpath("./android.widget.Button[@clickable='true']").all()
始终找不到。
去搞清楚xpath的写法
# 多个条件定位, 类似于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()
却就是找不到元素。。。
暂时不知道为何。