python UIAutomator2使用超详细教程
概述
这篇文章主要介绍了python UIAutomator2使用超详细教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
目录
- 一、环境要求
- 二、介绍
- 三、库地址
- 四、安装
- 五、应用及操作
一、环境要求
python 3.6+
android 4.4+
二、介绍
uiautomator2 是一个可以使用Python对Android设备进行UI自动化的库。其底层基于Google uiautomator,Google提供的uiautomator库可以获取屏幕上任意一个APP的任意一个控件属性,并对其进行任意操作。
三、库地址
GitHub地址:
https://github.com/openatx/uiautomator2
https://github.com/openatx/uiautomator2/blob/master/README.md
四、安装
1、安装uiautomator2
pip install --pre uiautomator2 pip install pillow (如果需要截图,可安装这个库)2、设备安装atx-agent
首先设备连接到PC,并能够adb devices发现该设备。
执行下面的命令会自动安装本库所需要的设备端程序:uiautomator-server,atx-agent,openstf / minicap,openstf / minitouch
1 2 3 4 5 6 7 8 |
|
最后提示success,代表atx-agent初始化成功。
3、安装weditor
有了这个,方便我们快速的识别手机上的元素,方便写代码
1 |
|
安装好之后,就可以在命令行运行weditor --help确认是否安装成功了。
Windows系统可以使用命令在桌面创建一个快捷方式:
1 |
|
在windows cmd中执行上述命令后,会在桌面上创建一个快捷方式,如下图:
启动方法:
方法1.命令行直接输入weditor会自动打开浏览器,输入设备的ip或者序列号,点击Connect即可;
方法2.桌面上双击WEditor快捷方式即可;
方法3.命令行中执行python -m weditor
启动后如下图:
五、应用及操作
调用uiautomator2的过程
配置手机设备参数,设置具体操作的是哪一台手机
抓取手机上应用的控件,制定对应的控件来进行操作
对抓取到的控件进行操作,比如点击、填写参数等。
设备连接方法,有两种:
python-uiautomator2连接手机的方式有两种,一种是通过WIFI,另外一种是通过USB。两种方法各有优缺点。
WIFI最便利的地方要数可以不用连接数据线,USB则可以用在PC和手机网络不在一个网段用不了的情况。
(1)通过WiFi,假设设备IP 192.168.0.107和您的PC在同一网络中
1 2 |
|
(2)通过USB, 假设设备序列是123456789F
1 2 3 |
|
在没有参数的情况下调用u2.connect(), uiautomator2将从环境变量ANDROID_DEVICE_IP获取设备IP。如果这个环境变量是空的,uiautomator将返回connect_usb,您需要确保只有一个设备连接到计算机。
检查并维持设备端守护进程处于运行状态:
1 |
|
打开调试开关:
1 2 |
|
安装应用,只能从URL安装:
1 |
|
启动应用:
1 |
|
停止应用:
1 2 3 4 5 |
|
停止所有正在运行的应用程序:
1 2 3 4 5 |
|
跳过弹窗,禁止弹窗:
1 2 |
|
获取设备信息:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
获取应用信息:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
推拉文件:
(1)将文件推送到设备
1 2 3 4 5 6 7 8 9 |
|
(2)从设备中拉出一个文件
1 2 3 4 |
|
关键事件:
(1)打开/关闭屏幕
1 2 |
|
(2)获取当前屏幕状态
1 |
|
(3)硬键盘和软键盘操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
(4)解锁屏幕
1 2 3 4 |
|
手势与设备的交互:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
|
XPath:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
|
UI对象有五种定位方式:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
|
常见用法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
|
文章参考:UIAutomator2的使用 | Vicの博客
到此这篇关于python UIAutomator2使用超详细教程的文章就介绍到这了,更多相关python UIAutomator2使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
- python 使用uiautomator2连接手机设备的实现
- Python+uiautomator2实现自动刷抖音视频功能
- 详解python uiautomator2 watcher的使用方法
- 利用Python批量提取Win10锁屏壁纸实战教程
- Python中Selenium模拟JQuery滑动解锁实例
- Python+uiautomator2实现手机锁屏解锁功能
