一笑·科奉

python连接andorid手机截屏并点击指定图标

作者: 一笑, 写于: 2019-08-31 20:31:39

想实现的效果是自动点击并拾取city5中的金钱

image.png

1、安装adb

可以到网上下载,或者已经安装过Android Studio的直接使用这个目录中的即可:D:\Android\Sdk\platform-tools

image.png

加到环境变量中

image.png

打开cmd命令行窗口,执行:

adb

执行结果如下,则为已安装正常

image.png

2、用USB连接手机并打开手机的调试模式后,在命令行中执行

adb devices

查看连接设备(注意:执行了此命令后,有些手机会提示是否允许连接调试,允许即可)

image.png

3、编写python文件main.py

import os
os.system('adb shell screencap -p /sdcard/01.png')
os.system('adb pull /sdcard/01.png tmp/01.png')

4、执行

python main.py

效果

image.png

5、获取图片中指定图标的坐标

获取屏幕分辨率,执行下边语句,并在返回结果中找到0035/0036(如红框)

adb shell getevent -p

image.png

得到宽度max1079和高度max2339

0035  : value 0, min 0, max 1079, fuzz 0, flat 0, resolution 0

0036  : value 0, min 0, max 2339, fuzz 0, flat 0, resolution 0


获取手机分辨率

adb shell wm size

得到:1080x2340

image.png

获取截屏图片大小:

image.png

得到换算比率

rateW = 1080/1080 = 1

这样如果需要点击图片中的某个位置,只需要知道其像素x换算比就可以计算出x/y了(小米9刚好是1:1.。。。)

6、执行模拟鼠标点击

image.png

获取到x=461 y=265

执行点击事件

adb shell input tap 461 265

成功

image.png

注:真正实现自动捡钱,还需要定时截图与识别图片中金钱的位置之后,再自动点击


分类: 未分类, 浏览: 173, 评论: 0
原创文章转载请注明:转自《一笑·科奉》 原文地址:https://www.kefong.com/post/108.html