肿瘤康复网,内容丰富有趣,生活中的好帮手!
肿瘤康复网 > python跳一跳脚本详解_微信跳一跳游戏 python脚本辅助得高分

python跳一跳脚本详解_微信跳一跳游戏 python脚本辅助得高分

时间:2020-06-03 18:25:41

相关推荐

微信小程序一时间火爆朋友圈,关键是还有排行榜!游戏操作简单,可直接根据电脑识别,用python写出自动跳辅助脚本,本想动手写下,索性网上有大神写了现成脚本,修改了一小部分参数,就可以稳定使用了霸榜没有任何压力,大致看了一下,用到了numpy os pillow等模块和adb工具,原理其实很简单,大致就是用adb工具连接手机并截图上传到电脑,用pillow测算两点间的距离,并用adb根据距离来确定按压起跳的时间来达到完美的起跳距离,这边分享使用该脚本,下载可以点击这里,具体作者也有大致的使用方法介绍

脚本文件详解

一、需要配置的环境

1.python环境(用python运行脚本)

根据自己的电脑系统,可在这里下载

最好选择高版本的,如3.4以上的版本,然后配置环境

在cmd下运行python,如下表示安装python环境成功

python3.6

2.pip包

可直接用命令python easy_install pip安装pip包,或者百度下载手动放置在python文件下,不过多赘述

3.安装python模块numpy pillow等

可直接在脚本目录下打开cmd,用pip包安装模块

pip install -r requirements.txt

以下为requirements.txt,里面模块版本可根据python版本进行手动更改并安装

backports.functools-lru-cache==1.4

cycler==0.10.0

matplotlib==2.1.1

numpy==1.13.3

olefile==0.44

opencv-python==3.4.0.12

Pillow==4.3.0

pyparsing==2.2.0

python-dateutil==2.6.1

pytz==.3

six==1.11.0

4.adb工具配置

切换至项目的 /Tools/adb 目录,双击adb.exe并可运行,然后加入至系统环境,与python环境配置类似

5、安卓模拟器(为了方便我直接下了个安卓模拟器,当然你也可以用真实手机连接电脑)推荐雷电模拟器,自行百度下载

并下载微信打开跳一跳游戏,将模拟器分辨率调至1080p

二、运行操作

1.模拟器中打开游戏,cmd中cd到项目目录,用python运行脚本

python wechat_jump_py3.py

脚本设定了一定的等待时间和尝试机会,以防被系统查水表,启动脚本后,可以不用动手了,达到一定分数 ctrl+c停止即可,切勿刷太高哦!

主程序代码如下:

# -*- coding: utf-8 -*-

import os

import time

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.animation as animation

from PIL import Image

def pull_screenshot():

os.system('adb shell screencap -p /sdcard/autojump.png')

os.system('adb pull /sdcard/autojump.png .')

def jump(distance):

press_time = distance * 1.35

press_time = int(press_time)

cmd = 'adb shell input swipe 320 410 320 410 ' + str(press_time)

print(cmd)

os.system(cmd)

fig = plt.figure()

pull_screenshot()

img = np.array(Image.open('autojump.png'))

im = plt.imshow(img, animated=True)

update = True

click_count = 0

cor = []

def update_data():

return np.array(Image.open('autojump.png'))

def updatefig(*args):

global update

if update:

time.sleep(1.5)

pull_screenshot()

im.set_array(update_data())

update = False

return im,

def on_click(event):

global update

global ix, iy

global click_count

global cor

ix, iy = event.xdata, event.ydata

coords = [(ix, iy)]

print('now = ', coords)

cor.append(coords)

click_count += 1

if click_count > 1:

click_count = 0

cor1 = cor.pop()

cor2 = cor.pop()

distance = (cor1[0][0] - cor2[0][0])**2 + (cor1[0][1] - cor2[0][1])**2

distance = distance ** 0.5

print('distance = ', distance)

jump(distance)

update = True

fig.canvas.mpl_connect('button_press_event', on_click)

ani = animation.FuncAnimation(fig, updatefig, interval=50, blit=True)

plt.show()

脚本简单,却让我遇上了安卓神器adb,很不错的小工具耶~,写此文做个纪念,深入研究adb,日后可派上大用场!

如果觉得《python跳一跳脚本详解_微信跳一跳游戏 python脚本辅助得高分》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。