编程语言
首页 > 编程语言> > Python模拟手机操作

Python模拟手机操作

作者:互联网

1.安装adb shell

只需要下载zip包即可,解压后即可用。

https://www.xda-developers.com/install-adb-windows-macos-linux/

2.获取设备操作后的指令

3.uiautomator自动化测试框架

1.安装app自动测试框架

pip install uiautomator2

2.安装atx-agent至手机

python3 -m uiautomator2 init

import uiautomator2 as u2
d = u2.connect_usb(‘xxxxx’)

3.1通过USB连接

import uiautomator2 as u2
d = u2.connect_usb('设备号')

3.2通过WiFi连接

import uiautomator2 as u2  //依赖包
d = u2.connect('IP地址')

5.控件识别
pip3 install weditor

使用方法
1.手机连接pc,adb命令保证能正确读取到设备
2.pc终端输入python3 -m webditor,浏览器自动打开网页http://atx.open.netease.com
3.网页对应位置输入手机设备ip,点击connect连接手机设备,最后根据需要获取手机/app对应元素
正常启动页面如下:
设备id输入/Connect连接/reload刷新页面
在这里插入图片描述

7. python操作adb

pip install pure-python-adb

4.流式获取手机屏幕

实时显示手机屏幕

安装scrcpy
安装scrcpy-server.jar
主要步骤如下:

通过 adb push 一个 scrcpy-server.jar 到手机上。
注: scrcpy-server.jar 是虽然是一个 zip 文件。 但是其实是一个apk。
PC 端通过 adb reverse 反向代理手机端口。用来接收手机端发送过来的数据。
adb shell CLASSPATH=/data/local/tmp/scrcpy-server.jar app_process /com.genymobile.scrcpy.Server com.genymobile.scrcpy.Server 0 8000000 false - false 使用 app_process 运行 scrcpy-server.jar 的代码。
scrcpy-server.jar 主要做三件事情:
1,开启 LocalSocket 和PC连接。 相应 PC 端传递过来的操作。
2,源源不断的将屏幕画面输出到PC,使用Mediacodec 编码。 PC 通过ffmpeg 解码播放。
3,使用 adb 来提高 scrcpy-server.jar 的运行权限
注: 模拟 input 事件使用 android.hardware.input.IInputManager.injectInputEvent 方法。

:scrcpy-server.jar的获得方式:下载scrcpy-server-v1.17后重命名为scrcpy-server.jar,参考:Is it possible to redirect the stream to another application ? #1073

标签:scrcpy,模拟手机,Python,jar,server,adb,手机,操作,u2
来源: https://blog.csdn.net/mbshqqb/article/details/115603549