教你用 Python 来玩微信跳一跳
扫描二维码
随时随地手机看文章
2017 年 12 月 28 日下午,微信发布了 6.6.1 版本,加入了「小游戏」功能,并提供了官方 DEMO「跳一跳」。这是一个 2.5D 插画风格的益智游戏,玩家可以通过按压屏幕时间的长短来控制这个「小人」跳跃的距离。分数越高,那么在好友排行榜更加靠前。通过 Python 脚本自动运行,让你轻松霸榜。
可能刚开始上手的时候,因为时间距离之间的关系把握不恰当,只能跳出几个就掉到了台子下面。如果能利用图像识别精确测量出起始和目标点之间测距离,就可以估计按压的时间来精确跳跃。
原理说明
将手机点击到《跳一跳》小程序界面
用 ADB 工具获取当前手机截图,并用 ADB 将截图 pull 上来
adb shell screencap -p /sdcard/autojump.png
adb pull /sdcard/autojump.png
复制代码
计算按压时间
手动版:用 Matplotlib 显示截图,用鼠标先点击起始点位置,然后点击目标位置,计算像素距离;
自动版:靠棋子的颜色来识别棋子,靠底色和方块的色差来识别棋盘;
用 ADB 工具点击屏幕蓄力一跳
adb shell input swipe x y x y time(ms)
复制代码
使用教程
方法 1:使用 app 进行一键操作。目前已适配 Win10 64位/macOS 平台 Android 一键操作,下载请移步 STOP_jump
方法 2:相关软件工具安装和使用步骤请参考 Android
和 iOS 操作步骤
FAQ
如果你手机的的 config.json 出错导致弹跳不准确,或者有更好的参数?
请在这里提交你的问题 issues/62,或者将参数PR给我们并附上你的最高成绩。
iOS 设备遇到问题怎么办?
请移步参考:issues/99 和 issues/4
如果你对环境安装和操作步骤不熟悉?
Android
和 iOS 操作步骤
如果你的分数被微信清零或者排名不显示?
注意不要刷太高分数,适当休息,参见 issues/164
如果有找不到 ./autojump.png 文件的错误?
请查阅 issue/194
如果你在苦苦寻找视频教程?
参考一位 B 站 UP 主的视频教程 [【微信跳一跳】教你如何不用双手还能霸占排行榜第一名](https://www.bilibili.com/video/av17796840/?
小米设备程序运行正常,但没反应?
除了 USB 调试,还要打开底下的 USB 调试(安全)
USB 可能要设置成 MTP 模式
锤子手机一直在蓄力,截图出现?
调试前请先关闭大爆炸功能