ADB驱动 + Uiautomator2 环境搭建(python自动化)

时间:2024-04-14 09:53:09

ADB驱动 + Uiautomator2 环境搭建

ADB驱动

ADB驱动下载

百度搜索ADB驱动下载并安装,我用的是adb1.4.3版本的,低版本有部分指令不兼容,比较麻烦。

  • 可以去官网下载,也可以在各种软件网下载。搞颜色的,搜索能力都不差,对吧。
    ADB驱动 + Uiautomator2 环境搭建(python自动化)

ADB安装

下载好后,点击 .exe 可执行文件,将会弹出蓝色窗口,一直 y y y就好了。
ADB驱动 + Uiautomator2 环境搭建(python自动化)
随后转入设备驱动程序安装向导(ADB驱动也不是特别大,直接跟着默认走就好了,现在都0202年了):
ADB驱动 + Uiautomator2 环境搭建(python自动化)
给ADB驱动配环境变量,如何配置环境变量就不详讲了。
ADB驱动 + Uiautomator2 环境搭建(python自动化)
这样,我们的ADB驱动就搞好了。可以去命令行测试,要将移动端用手机接入PC中
常用的几条ADB指令,我只是像写个自动化脚本,所有没过多研究有哪些指令(有接触到其他的在补充)
要注意是否有其他程序占有了ADB的端口号,默认是“5037”

  • adb devices 应该是获取手机的***。
    ADB驱动 + Uiautomator2 环境搭建(python自动化)
    我们将把这个***用在ATX WEditor下的(下图的红框框内)
    ADB驱动 + Uiautomator2 环境搭建(python自动化)
    python -m uiautomator2 init 给你的手机下载并安装 atx-agent 软件,一定要安装的喔
    ADB驱动 + Uiautomator2 环境搭建(python自动化)                                                             ADB驱动 + Uiautomator2 环境搭建(python自动化)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Uiautomator2

uiautomator2下载

进入命令框输入:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple uiautomator2
之前已经写过了如何镜像了 传送门

Python调用 uiautomator2模块

import uiautomator2

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

综合(都配置好的前提)

  • 在命令行处使用 adb devices 获取***
  • 在命令行处输入 python -m weditor 将会通过默认浏览器打开 http://localhost:17310/这一网址
    ADB驱动 + Uiautomator2 环境搭建(python自动化)
  • 在刚才讲的红框处,输入自己的***
  • 点击 Connect 按键,启动,启动成功后会多片树叶
  • 开始编写python脚本,像d(XXXXXYYYYY)这一串,可以在 http://localhost:17310/ 的代码处复制
    和python里的pyautogui模块控制鼠标键盘是类似的

d = uiautomator2.connect(“192.168.0.100”)
#用IPV4来连接,可在ATX那个APP上看到
d = uiautomator2.connect_usb()
#只要单台移动设备是可以不用填写,多台设备就需要在方法内加入对应的***了
d(text=“XXXX”).click()
#在手机屏幕上找XXXX文字的按钮进行点击,支持中文
d(description=“XXXX”).click()
点击目标按钮
d(resourceId=“com.location.XXXXXXXX”).set_text(‘hello world’)
在d(resourceId=“com.location.XXXXXXXX”)对应的文本框输入“hello world”

自动化一时爽,一直自动一直爽。