一、思路介绍

  1. 通过Python自动手机截屏,并保存到电脑

  2. 通过PhotoShop测量要跳的距离

  3. 通过Excel计算按压时间

  4. 通过CMD命令控制手机按压时间

 

二、实现方法详解

  1. 通过Python自动手机截屏,并保存到电脑

    我这里用的Pycham工具,语言Python,语句就这几行。

    程序运行成功后,可以看到目录下出现了图片666.png,每过1s自动刷新手机截屏并下载覆盖本地图片,这时手机打开跳一跳的游戏,就是跳一跳的图片截图了

  

 1 #!/usr/bin/env python
 2 # coding: utf-8
 3 import os
 4 import time
 5 
 6 
 7 if __name__ == '__main__':
 8     while True:
 9         # 截屏命令
10         cmd = r'adb shell screencap -p /sdcard/1/666.png'
11         os.system(cmd)
12         # 保存到本地
13         cmd = r'adb pull /sdcard/1/666.png E:\Python\Demo\venv1\jumpgame'
14         os.system(cmd)
15         time.sleep(1)

View Code

  说明:执行 adb shell screencap -p /sdcard/1/666.png 需要:

    (1) 手机USB连接电脑,手机要打开开发者模式,USB调试模式打开

    (2) 电脑安装 adb 

 

  2. 通过PhotoShop测量要跳的距离

  用PhotoShop打开666.png图片,选中吸管里的标尺工具,在图片上面测量要跳的距离,上面可以看到522.22个像素

    

  3. 通过Excel计算按压时间

  将PhotoShop测量的数据到Excel进行计算(结果=比例*距离),这里的结果就是按压时间,取整715

  比例根据不同实际手机或者分辨率可能会有差异,根据跳的距离调整一下就好,我的手机分辨率1920*1080

  

  4. 通过CMD命令控制手机按压时间

  打开CMD,输入adb shell input swipe 100 100 100 100 715

  这5个参数前面的四个100是按压地点,可以随意输入,只要不超过边界就行,后面的715就是前面计算的按压时间

  回车后会发现手机已经跳了一步了,由于用ps测量的是像素,所以准确率超级高,基本每次都能跳到正中间,基本跳30次就可以得到600多分

  

 

三、补充

  其实Python实现手机截图,可以不通过Python程序,直接CMD执行截屏和保存本地命令,一样可以实现,只不过操作会比较麻烦一点

  分数刷太高容易被删掉,之前刷了个1111和666都被删了,只保留了这个,不过这都不是重点,重点的是过程

  文章全部原版手打,不足之处请指正,有任何疑问欢迎留言咨询!

  

posted on 2018-01-07 18:25 Vrapile 阅读() 评论() 编辑 收藏
版权声明:本文为Vrapile原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/Vrapile/p/8229073.html