今天我有一个大胆的想法,想在手机里面编写python脚本自动化控制手机。既然有了这么大胆而想法,而且我还能实现,那么就有了我现在这篇文章。
如何在手机里面编程
首先先介绍一款能直接在手机里面运行代码的软件QPython,想要安装的可以直接到官网去下载安装即可。QPython是一个能让安卓手机运行和编写Python的APP,安装好之后我们就可以在手机上编写Python脚本了。
QPython
安装好之后,在手机里面打开软件就类似下图。就可以开始动手编写代码了。
QPython编写代码
通过电脑在手机上安装一个控制器
如果没有安装控制器的话,手机是无法被python脚本控制的,所以必须安装
1、安装uiautomator2,执行命令
pip install --pre -U uiautomator2
2、设备安装atx-agent
首先Android设备连接到PC,并能够adb devices发现该设备,执行命令
python -m uiautomator2 init
后提示success,代表atx-agent初始化成功。之后便能用python脚本控制手机了。
在QPython安装python库文件
安装好之后,我们可用通过QPython中的pip工具安装uiautomator2与它的依赖huamanize、progress和requests,打开QPython,点击QPYPI,然后点击INSTALL WITH PYTHON'S PYPI,分别执行:
pip install requests
pip install humanize
pip install progress
安装成功即可。
手机端运行脚本
文件atx_agent_demo.py用网易云音乐来进行简单的demo演示
import uiautomator2 as ut2
def main():
u = ut2.connect('http://0.0.0.0:7912')
print(u.info)
u.app_start('com.netease.cloudmusic')
u(text='私人FM').click()
u(description='转到上一层级').click()
u(text='每日推荐').click()
u(description='转到上一层级').click()
u(text='歌单').click()
u(description='转到上一层级').click()
u(text='排行榜').click()
u(description='转到上一层级').click()
if __name__ == '__main__':
main()
打开QPython,点击文件,然后点击dcripts找到atx_agent_demo.py,运行即可。附上运行的GIF
在手机在运行python控制手机
上面动图是由手机里面的脚本控制的,到此我们就完成了整个大胆的想法。