码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • uiautomator2常用命令


    1. import uiautomator2 as u2
    2. #连接设备
    3. d = u2.connect(“设备名”) 
    4. #启动app
    5. d.app_start(“包名”)
    6. #python的time模块,延迟1秒
    7. time.sleep(1)
    8. #上滑百分之50
    9. d.swipe_ext("up", 0.5)
    10. #xpath查找文本,并点击
    11. d.xpath('//*[@text="文本"]').click()
    12. #返回键
    13. d.press("back")
    14. #判断元素是否存在
    15. if d.xpath('//*[@text="文本"]').exists:
    16. print("获取到元素")
    17. else:
    18. print("未获取到元素")
    19. #获取元素中心坐标
    20. d.xpath('//*[@text="文本"]').center()
    21. #获取元素中心坐标
    22. center=str(d.xpath('//*[@text="文本"]').center())
    23. center= center.replace('(','')
    24. center= center.replace(')','')
    25. center=center.split(', ')#按逗号分割字符串成数组
    26. print(center)
    27. #查找字符索引
    28. indexes= text.find(",")
    29. indexesLen= len(text)
    30. #获取子元素文本
    31. elements= d.xpath('//*[@text="元素文本"]')#得到元素
    32. children=elements.all()[0].elem.getchildren()#获取元素下第一个子元素全部信息,返回类型类似数组,注意第一次得到元素信息要.elem,之后就不用了
    33. print(children[0].get("text"))#得到元素下第一个子元素信息里的第一个子元素的文本
    34. grandchildren=children[1].getchildren()#获取元素下第一个子元素信息里,的第二个子元素信息
    35. print(grandchildren[0].get("text"))#获取元素下第一个子元素信息里,的第二个子元素信息里,的第一个子元素文本
    36. print(grandchildren[1].get("text"))#获取元素下第一个子元素信息里,的第二个子元素信息里,的第二个子元素文本
    37. #得到元素文本里类似(1/10)的文本,计算出差值
    38. text=str(children[0].get("text"))
    39. indexes= text.find("(")
    40. #print('idx='+str(indexes))
    41. text=text[indexes+1:len(text)]
    42. text=text.replace(')','')
    43. print(text)
    44. array=text.split('/')
    45. print(int(array[1])-int(array[0]))
    46. #查找文本里是否有出现字符
    47. “123456”.find('6')

  • 相关阅读:
    HTTP vs RPC:理解两种通信协议的区别
    深度学习必备基础知识点
    60行自己动手写LockSupport是什么体验?
    Python爬虫——scrapy-4
    Postman接口&压力测试 ---- Tests使用(断言)
    CentOS部署Redis(详细)
    『SpringBoot 源码分析』run() 方法执行流程:(3)刷新应用上下文-处理 @ComponentScan 注解
    详解深度学习中,如何进行反向传播
    【VUE】vue.js、vue.min.js、vue.runtime.esm.js
    【LeetCode:2530. 执行 K 次操作后的最大分数 | 堆】
  • 原文地址:https://blog.csdn.net/weixin_46616558/article/details/126582114
  • 最新文章
  • 【FHE】我们如何实现同态加密推理(八):SiLU 的密文化——两条路径,和一个 8 字节的开关
    SQLcl 中 c/old/new 替换变量为何失效?先定位再替换
    不让模型写作文,直接从它脑子里读答案:Jev 决策在 .NET 的两条路线
    Halo插件:支持GitHub的图床附件策略
    电视投屏界的“一股清流”!SimpleTVCast 6.0.0-beta 抢先体验:无需TV端App,界面大换血!✨
    华三VXLAN集中式网关实战指南:Spine多活网关 + 双活接入(M-LAG)
    软件更好写之后口碑会更重要
    大 O、大 Omega、大 Theta 的区别,O(n) 复杂度是什么意思
    Java标签跳转:一个鲜为人知但却很实用的小技巧
    多智能体系统论文速读
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号