python uiautomator2 常用操作

uiautomator2 安装

python uiautomator2 安装及使用-CSDN博客

一, 通过包名可以打开app

d.app_start('com.gacne.www')

打开app运行后执行代码,查看app具体信息获取包名

复制代码
d.info

二,执行等待点击

160秒内等待xpath定位的出现执行点击

d.xpath('//*[@text="此地"]').wait(160).click()

三,屏幕截图

png_path = './images/'+str(i)+'.png'

d.screenshot(png_path)

四,获取文本内容

复制代码
#第一种
d.xpath('//*[@resource-id="cache-content"]/android.view.View[3]/android.widget.TextView[2]').info.get('text')
#第二种
d.xpath('//*[@resource-id="cache-content"]/android.view.View[3]/android.widget.TextView[2]').get_text()

五,定位元素

(3)ResourceId定位

d(resourceId="com.addcn.android.house591:id/ad_banner").click()

(4)Text定位

d(text="精选").click()

(5)Description定位

d(description="..").click()

(6)ClassName定位

d(className="android.widget.TextView").click()

(7)xpath定位

d.xpath("//*[@content-desc='分享']").click()

六,通过父级定位元素

复制代码
d(resourceId="com.ss.android.ugc.aweme:id/a0b").child(className="android.widget.FrameLayout")

选择父级下的一个元素

复制代码
d(className="androidx.recyclerview.widget.RecyclerView").child(className="android.widget.FrameLayout")[0].get_text()

child_by_text 定位子元素

#定位父级下text为'xxx',class为'com.lynx.tasm.behavior.ui.text.FlattenUIText'的元素

复制代码
d(resourceId="com.ss.android.ugc.aweme:id/a0b").child_by_text('xxx',className="com.lynx.tasm.behavior.ui.text.FlattenUIText")  

child_by_description

#定位父级下description 为'xxx',class为'com.lynx.tasm.behavior.ui.text.FlattenUIText'的元素

复制代码
re = d(resourceId="com.ss.android.ugc.aweme:id/a0b").child_by_description('xxx',className="com.lynx.tasm.behavior.ui.text.FlattenUIText")

siblings

#定位text为'xxx',class为'com.lynx.tasm.behavior.ui.view.UIView'的兄弟元素

复制代码
d(text="zcdsczzx").sibling(text="xxx",className="com.lynx.tasm.behavior.ui.view.UIView")
相关推荐
秋难降4 分钟前
线段树的深度解析(最长递增子序列类解题步骤)
数据结构·python·算法
猿榜6 分钟前
Python基础-控制结构
python
Ratten19 分钟前
【Python 实战】---- 实现一个可选择、配置操作的批量文件上传工具(三)上传类的实现
python
阿里云大数据AI技术1 小时前
【跨国数仓迁移最佳实践6】MaxCompute SQL语法及函数功能增强,10万条SQL转写顺利迁移
python·sql
杜子不疼.2 小时前
《Python学习之文件操作:从入门到精通》
数据库·python·学习
微小的xx2 小时前
java + html 图片点击文字验证码
java·python·html
金色旭光2 小时前
uv 现代化的虚拟环境管理工具
python·python进阶
赞哥哥s2 小时前
Python脚本开发-统计Rte中未连接的Port
python·autosar·rte
Franklin2 小时前
Python界面设计【QT-creator基础编程 - 01】如何让不同分辨率图像自动匹配graphicsView的窗口大小
开发语言·python·qt
waynaqua2 小时前
FastAPI开发AI应用三:添加深度思考功能
python·openai·deepseek