微信跳一跳python辅助脚本(总结)
这段时间微信跳一跳这个游戏非常火爆,但是上分又非常的难,对于程序员来说第一个念头就是通过写一个辅助脚本外挂让上分变的容易,python现在比较火,我们一起来以python语言为基础总结以下各路神仙写的关于跳一跳的辅助脚本,大家在学习的时候主要理解他们的写法思路,对你学习python非常的有帮助。
注解:思路
核心:每次落稳之后截图,根据截图算出棋子的坐标和下一个块顶面的中点坐标,
根据两个点的距离乘以一个时间系数获得长按的时间
识别棋子:靠棋子的颜色来识别位置,通过截图发现最下面一行大概是一条直线,就从上往下一行一行遍历,
比较颜色(颜色用了一个区间来比较)找到最下面的那一行的所有点,然后求个中点,
求好之后再让 Y 轴坐标减小棋子底盘的一半高度从而得到中心点的坐标
识别棋盘:靠底色和方块的色差来做,从分数之下的位置开始,一行一行扫描,由于圆形的块最顶上是一条线,
方形的上面大概是一个点,所以就用类似识别棋子的做法多识别了几个点求中点,
这时候得到了块中点的 X 轴坐标,这时候假设现在棋子在当前块的中心,
根据一个通过截图获取的固定的角度来推出中点的 Y 坐标
最后:根据两点的坐标算距离乘以系数来获取长按时间(似乎可以直接用 X 轴距离)
注解:这个脚本的工作原理
在跳一跳页面截图
计算出初始点和终点的距离
想办法测出距离与按压时间的系数
想办法让手机按压指定的时间
重复1-4
原理:配置adb环境变量,在我的电脑?》属性?》高级系统设置?》环境变量?》Path上添加adb.exe所在的路径。
这是一个关于在PC端模拟的脚本
说明:
1.windows上安装安卓模拟器,安卓版本5.1以上
2.模拟器里下载安装最新的微信6.6.1
3.最好使用python2.7,python3的pyhook包有bug,解决比较麻烦
核心思想
获取棋子到下一个方块的中心点的距离
计算触摸屏幕的时间
点击屏幕
计算棋子到下一个方块中心点的距离
使用 adb shell screencap -p 命令获取手机当前屏幕画面
再通过图像上的信息找出棋子的坐标和下一个方块中心点的坐标
然后通过两点间距离公式计算出距离
本次脚本是以小米5S这个手机为例子原理和实现方式和以前介绍的差不多。
一、整体思路
棋子所在的坐标以及下一步所要到的坐标,根据两个坐标计算出两点之间距离进行跳跃。
二、分布思路
1、根据命令截图获取初始图保存到手机,然后上传到本地文件夹
2、将获取的截图放入新建的坐标轴中(matplotlib)
3、通过鼠标点击事件获取所在初始坐标以及重点坐标,并计算出直线距离
4、进行跳跃,跳跃完成后清空坐标并更新截图
8、教你用 Python 实现微信跳一跳(Mac+iOS版)
这是在MAC环境下和IOS系统中用Python实现的脚本。
本篇的脚本稍微复杂些,适合进阶的python程序员学习。
以上就是脚本之家为大家整理的关于用python语言在不同操作系统环境下写出微信跳一跳脚本辅助的相关内容,如果你对此很有兴趣,那么学习完以上的内容,你会对python的知识有一个更加深入的了解,通过跳一跳这个小游戏为例子,更多的内容可以举一反三。
- xml-rpc(2)-first demo_v2
- xml-rpc(1)-first demo
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(55)-工作流设计-表单布局
- 网站源文件被注入了iframe代码—ARP欺骗的木马病毒攻击
- ASP.NET MVC5+EF6+EasyUI 后台管理系统--工作流演示截图
- 基于CPPN与GAN+VAE生成高分辨率图像
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(54)-工作流设计-所有流程监控
- (收藏)搭建.NET Framework 3.0开发环境 及SharePoint 2007/WSS 3环境
- WCF技术剖析之八:ClientBase<T>中对ChannelFactory<T>的缓存机制
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(48)-工作流设计-起草新申请
- 把windows2003“搬”到手机上。
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(53)-工作流设计-我的批阅
- ASP.NET MVC5+EF6+EasyUI 后台管理系统--任务调度系统解析
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(52)-美化EasyUI皮肤和图标
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- js实现图片资源转化成base64的各种场景
- js input file 转base64
- 算法和数据结构:快速排序
- 算法和数据结构:归并排序
- 算法和数据结构: 二 基本排序算法
- 非中间人就没法劫持TCP了吗?
- HW在即——红队活动之Lnk样本载荷篇
- 用正则表达式修改html字符串的所有div的style样式
- 深入理解 WebSecurityConfigurerAdapter【源码篇】
- 算法和数据结构: 十二 无向图相关算法基础
- 算法和数据结构: 十一 哈希表
- 【DB笔试面试849】在Oracle中,在没有配置ORACLE_HOME环境变量的情况下,如何获取ORACLE_HOME目录?
- 算法和数据结构: 九 平衡查找树之红黑树
- 算法和数据结构: 七 二叉查找树
- Python 面向对象编程(下篇)