在12月28日,微信更新了6.6.1版本,此更新的最大特点是增加了小程序任务栏,其中的“跳一跳”小游戏迅速霸占了整个朋友圈,本文将详细讲解如何使用python脚本来玩小游戏。目前我的得分是500+,分数太高有风险,需谨慎。
环境信息
本文使用python语言,针对安卓手机(版本在Android5.1以上)而制定。
-
Pycharm是python的一款编辑器,使用前要下载Python 3.×以上的版本,Python 2.×在2020年后官方将不会继续维护。
-
ADB的全称为Andorid Debug Bridge,顾名思义这是一个安卓BUG调试工具。
-
夜神虚拟器是一款安卓虚拟器,选择这款虚拟器的原因很简单,因为逍遥和BlueStacks的这两款虚拟器的微信总是闪退。
工具名称 | 版本 | 下载链接 |
---|---|---|
Python | 3.6.4 | https://www.python.org/downloads/ |
Pycharm | Community(2017.3) | https://www.jetbrains.com/pycharm/download/#section=windows |
ADB | 2.0 | http://adbdriver.com/downloads/ |
夜神虚拟器 | 6.0.1.1 | https://www.yeshen.com/ |
工作原理
-
将手机点击到《跳一跳》小程序界面;
-
用 ADB 工具获取当前手机截图,并用 ADB 将截图 pull 上来;
adb shell screencap -p /sdcard/autojump.png adb pull /sdcard/autojump.png .
3.计算按压时间
-
手动版:用 Matplotlib 显示截图,用鼠标点击起始点和目标位置,计算像素距离;
-
自动版:靠棋子的颜色来识别棋子,靠底色和方块的色差来识别棋盘;
4.用 ADB 工具点击屏幕蓄力一跳;
操作步骤
1.安卓手机打开USB调试,设置》开发者选项》USB 调试;
注意:安卓手机的开发者模式需要点击版本号5次,才能在设置中显示出来。
2.电脑与手机 USB 线连接,确保执行 adb devices 可以找到设备 ID;
注意:ADB安装后要在环境变量中配置,否则会出现找不到设备的错误。例如安装完夜神虚拟器之后要添加的地址为:安装地址+Noxin。
执行正常图片
3.界面转至微信跳一跳游戏,点击开始游戏;
4.运行 python wechat_jump_auto.py ,如果手机界面显示 USB 授权,请点击确认;
5.请按照你的手机分辨率从 ./config/ 文件夹找到相应的配置,拷贝到 *.py 同级目录./config.json(如果屏幕分辨率能成功探测,会直接调用 config 目录的配置,不需要复制)。
注意:一定要放到与python安装目录同级的地方,否则执行失败。
例如:我的python文档叫做wegame,手机分辨率是1280×720,最后的config.josn以json格式保存。
adb shell wm size 命令获取分辨率
不同手机的分辨率和按压力度不同,所以不同手机要有不同的config文件。自动化脚本和config文件请查找 Spider爬虫,发送,“跳一跳”即可获得。