分数霸榜! python助你微信跳一跳拿高分


Posted in Python onJanuary 08, 2018

前言

最近微信的跳一跳很火,大家看到排行榜上几百上千的分数,再看看自己百分左右的分数肯定很难过,我手残怪我吗?没关系,如果你跟着我来,也能让你分数霸榜。

原理

首先大家是有一个直观感受,根据两个箱子距离的不同,需要按压的时间也是不一样的,一般来说,一个大胆的猜测是按压时间和距离是成正比的。

这是我们的工作原理:

  • 在跳一跳页面截图
  • 计算出初始点和终点的距离
  • 想办法测出距离与按压时间的系数
  • 想办法让手机按压指定的时间
  • 重复1-4

工具

  • adb调试工具,它可以辅助截图以及上传截图给电脑,以及控制手机按压位置及时间
  • python 处理数据
  • python Pillow库 一个图像库,可以获取图像信息
  • python matplotlib库 配合Pillow打开图像并记录鼠标点击地方的坐标

准备工作

环境

fedora 27
python3.6

安装

adb调试工具

fedora/centos

sudo yum install adb

ubuntu

sudo apt install adb

python需要的库

sudo pip3 install matplotlib
sudo pip3 install Pillow

还需要sudo yum install python3-tkinter(fedora)

sudo apt install pytho3-tk(ubuntu)

安装这个是为了支持matplotlib

开始行动

  • 手机连接电脑,打开usb调试,弹框是否允许计算及对手机控制选择是
  • 终端运行 adb devices 如果出现 590bc*** device类似的说明连接好了,否则重试第一步
  • 打开微信跳一跳,点击开始游戏,运行脚本
  • 在图片上依次点击棋子脚下和目的方框的中心
  • 手机开始跳了
  • 重复4

我的SM-C7000(1920x1080),我测出来系数是1.38。如果手机分辨率比我低,增大这个值,否则减小这个值,多次修改这个值直到适合你的手机。

代码

#coding=utf-8
from PIL import Image 
import pylab
import os
import time
import random

cut = 'adb shell screencap -p /sdcard/autojump.png'
push = 'adb pull /sdcard/autojump.png . '
jump = 'adb shell input swipe {x} {y} {x} {y} {time}'

while True:
 #手机截屏
 os.system(cut)
 time.sleep(0.01)

 #截图上传
 os.system(push)
 time.sleep(0.03)

 pic = Image.open('autojump.png')
 #获取屏幕像素
 (w,h) = pic.size

 #手指点击位置一般在中间偏下。取随机值混淆系统检测

 w = int(w*random.uniform(0.45,0.55))
 h = int(h*random.uniform(0.7,0.8))

 #打开图片
 im = pylab.array(pic) 
 pylab.imshow(im)

 #读取两个点 
 (x1,x2) =pylab.ginput(2) 

 #两点距离公式
 s = ((x1[0]-x2[0])**2 + (x1[1] - x2[1])**2)**0.5
 #print(s)1.38 2.05

 #分辨率与按压时间(ms)的系数
 ratio = 1.38

 #随机更改按压时间使他不是一个整百数
 s = s*ratio + random.randint(-20,20) 
 s = int(s)

 #pylab.close()
 #像手机发送跳远按压时间
 os.system(jump.format(x=w,y=h,time=s))
 time.sleep((s+500)/1000)

一些建议

最好停止跳之前手动跳几步,防止被tx发现。
分数不要太高,循序渐进逐渐升高,否则容易被清空分数。

更多内容大家可以参考专题《微信跳一跳》进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现自动登录人人网并访问最近来访者实例
Sep 26 Python
Python代码调试的几种方法总结
Apr 15 Python
Python实现约瑟夫环问题的方法
May 03 Python
Python数据分析之获取双色球历史信息的方法示例
Feb 03 Python
python矩阵/字典实现最短路径算法
Jan 17 Python
python学习--使用QQ邮箱发送邮件代码实例
Apr 16 Python
python处理RSTP视频流过程解析
Jan 11 Python
python实现简单的购物程序代码实例
Mar 03 Python
关于keras.layers.Conv1D的kernel_size参数使用介绍
May 22 Python
pyecharts在数据可视化中的应用详解
Jun 08 Python
教你使用Python pypinyin库实现汉字转拼音
May 27 Python
用PYTHON去计算88键钢琴的琴键频率和音高
Apr 10 Python
Python爬虫通过替换http request header来欺骗浏览器实现登录功能
Jan 07 #Python
ubuntu环境下python虚拟环境的安装过程
Jan 07 #Python
详解Python核心编程中的浅拷贝与深拷贝
Jan 07 #Python
用python实现的线程池实例代码
Jan 06 #Python
pip matplotlib报错equired packages can not be built解决
Jan 06 #Python
Python实现的朴素贝叶斯分类器示例
Jan 06 #Python
Python使用matplotlib绘制正弦和余弦曲线的方法示例
Jan 06 #Python
You might like
一个PHP的String类代码
2010/04/20 PHP
Zend Studio去除编辑器的语法警告设置方法
2012/10/24 PHP
php截取视频指定帧为图片
2016/05/16 PHP
Yii2 ActiveRecord多表关联及多表关联搜索的实现
2016/06/30 PHP
Zend Framework常用校验器详解
2016/12/09 PHP
javascript 尚未实现错误解决办法
2008/11/27 Javascript
jQuery创建插件的代码分析
2011/04/14 Javascript
javascript中xml操作实现代码
2011/11/21 Javascript
使用jQuery同时控制四张图片的伸缩实现代码
2013/04/19 Javascript
浅析JavaScript中的变量复制、参数传递和作用域链
2016/01/13 Javascript
js HTML5手机刮刮乐代码
2020/09/29 Javascript
详解JavaScript按概率随机生成事件
2017/08/02 Javascript
Nodejs调用WebService的示例代码
2017/09/29 NodeJs
vue+iview+less+echarts实战项目总结
2018/02/22 Javascript
spirngmvc js传递复杂json参数到controller的实例
2018/03/29 Javascript
浅谈JS和jQuery的区别
2019/03/27 jQuery
nodejs一个简单的文件服务器的创建方法
2019/09/13 NodeJs
JS实现碰撞检测效果
2020/03/12 Javascript
python多线程用法实例详解
2015/01/15 Python
12步教你理解Python装饰器
2016/02/25 Python
python append、extend与insert的区别
2016/10/13 Python
Python实现简单的四则运算计算器
2016/11/02 Python
Python无损音乐搜索引擎实现代码
2018/02/02 Python
python使用Matplotlib改变坐标轴的默认位置
2019/10/18 Python
JupyterNotebook设置Python环境的方法步骤
2019/12/03 Python
python 读写文件包含多种编码格式的解决方式
2019/12/20 Python
详解python中的三种命令行模块(sys.argv,argparse,click)
2020/12/15 Python
CSS3制作缩略图的详细过程
2016/07/08 HTML / CSS
苹果Mac升级:MacSales.com
2017/11/20 全球购物
简历中的自我评价范文
2014/02/05 职场文书
田径运动会开幕式及主持词
2014/03/28 职场文书
课前一分钟演讲稿
2014/08/26 职场文书
四年级数学上册教学计划
2015/01/20 职场文书
介绍信样本
2015/01/31 职场文书
环保主题班会教案
2015/08/13 职场文书
Python音乐爬虫完美绕过反爬
2021/08/30 Python