分数霸榜! 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实现聊天小程序
Mar 13 Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
Mar 30 Python
python3.x实现发送邮件功能
May 22 Python
基于windows下pip安装python模块时报错总结
Jun 12 Python
利用Python将每日一句定时推送至微信的实现方法
Aug 13 Python
TensorFlow实现模型评估
Sep 07 Python
使用selenium和pyquery爬取京东商品列表过程解析
Aug 15 Python
调试Django时打印SQL语句的日志代码实例
Sep 12 Python
python实现最短路径的实例方法
Jul 19 Python
python爬虫看看虎牙女主播中谁最“顶”步骤详解
Dec 01 Python
Python APScheduler执行使用方法详解
Dec 10 Python
用60行代码实现Python自动抢微信红包
Feb 04 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
文章推荐系统(三)
2006/10/09 PHP
海河写的 Discuz论坛帖子调用js的php代码
2007/08/23 PHP
php递归删除目录下的文件但保留的实例分享
2014/05/10 PHP
PHP框架Laravel的小技巧两则
2015/02/10 PHP
ThinkPHP进程计数类Process用法实例详解
2015/09/25 PHP
ThinkPHP的SAE开发相关注意事项详解
2016/10/09 PHP
ThinkPHP5.0框架实现切换数据库的方法分析
2019/10/30 PHP
利用jQuery接受和处理xml数据的代码(.net)
2011/03/28 Javascript
jquery的ajax异步请求接收返回json数据实例
2014/06/16 Javascript
分享33个jQuery与CSS3实现的绚丽鼠标悬停效果
2014/12/15 Javascript
jQuery过滤HTML标签并高亮显示关键字的方法
2015/08/07 Javascript
nodejs个人博客开发第一步 准备工作
2017/04/12 NodeJs
xmlplus组件设计系列之文本框(TextBox)(3)
2017/05/03 Javascript
如何实现一个webpack模块解析器
2018/10/24 Javascript
javascript防抖函数debounce详解
2019/06/11 Javascript
在Vue中使用this.$store或者是$route一直报错的解决
2019/11/08 Javascript
详解Nuxt内导航栏的两种实现方式
2020/04/16 Javascript
Sublime Text3 配置 NodeJs 环境的方法
2020/05/20 NodeJs
[00:36]我的中国心——Serenity vs Fnatic
2018/08/21 DOTA
闭包在python中的应用之translate和maketrans用法详解
2014/08/27 Python
Python实现注册登录系统
2017/08/08 Python
利用Python如何生成hash值示例详解
2017/12/20 Python
python3 小数位的四舍五入(用两种方法解决round 遇5不进)
2019/04/11 Python
简单了解python gevent 协程使用及作用
2019/07/22 Python
Kears+Opencv实现简单人脸识别
2019/08/28 Python
python PIL/cv2/base64相互转换实例
2020/01/09 Python
CentOS 7如何实现定时执行python脚本
2020/06/24 Python
树莓派4B安装Tensorflow的方法步骤
2020/07/16 Python
利用CSS3 动画 绘画 圆形动态时钟
2018/03/20 HTML / CSS
德国2018年度最佳在线药房:Bodfeld Apotheke
2019/11/04 全球购物
元旦晚会邀请函
2014/02/01 职场文书
函授大学生自我鉴定
2014/02/05 职场文书
李敖北大演讲稿
2014/05/24 职场文书
收款委托书
2014/10/14 职场文书
为自己工作观后感
2015/06/11 职场文书
Python实现位图分割的效果
2021/11/20 Python