一:准备工具

PyCharm:专门用于Python开发的IDE工具

实现原理

  • 获取手机的实时的截图
  • 点击起始位置和落地位置
  • 计算两个点的距离
  • 计算按压时间
  • 发送按压指令
  • 重新刷新手机截图

    1.安装此次程序所用到的模块(根据自己安装的Windows版本和python版本进行下载)。

    numpy-1.14.0rc1-cp36-none-win_amd64.whl

    Pillow-5.0.0-cp36-cp36m-win_amd64.whl

    matplotlib-2.1.1-cp36-cp36m-win_amd64.whl

    下载链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/

    使用cmd进入下载好的文件的目录,安装指令:(opencv是最后安装的)

    pip3.6 install C:\python36\Scripts\numpy-1.14.0rc1-cp36-none-win_amd64.whl

    pip3.6 install C:\python36\Scripts\Pillow-5.0.0-cp36-cp36m-win_amd64.whl

    pip3.6 install C:\python36\Scripts\matplotlib-2.1.1-cp36-cp36m-win_amd64.whl

  • 2.结果
  • 3.代码部分

     

    # !/usr/bin/env python
    # -*- coding:utf-8 -*-
    __author__ = 'wechat'
    import os
    import PIL,numpy
    import matplotlib.pyplot as plt
    from matplotlib.animation import FuncAnimation
    import time need_update = True def get_screen_image():
    os.system('adb shell screencap -p /sdcard/screen.png')#获取当前界面的手机截图
    os.system('adb pull /sdcard/screen.png')#下载当前这个截图到当前电脑当前文件夹下
    return numpy.array(PIL.Image.open('screen.png')) def jump_to_next(point1, point2):#计算炫的长度
    x1, y1 = point1; x2, y2 = point2
    distance = ((x2-x1)**2 + (y2-y1)**2)**0.5
    os.system('adb shell input swipe 320 410 320 410 {}'.format(int(distance*1.35))) def on_calck(event, coor=[]):#绑定的鼠标单击事件
    global need_update
    coor.append((event.xdata, event.ydata))
    if len(coor) == 2:
    jump_to_next(coor.pop(), coor.pop())
    need_update = True def update_screen(frame):#更新图片 /从画图片
    global need_update
    if need_update:
    time.sleep(1)
    axes_image.set_array(get_screen_image())
    need_update = False
    return axes_image, figure = plt.figure()#创建一个空白的图片对象/创建一张图片
    axes_image = plt.imshow(get_screen_image(), animated=True)#把获取的图片话在坐标轴上面
    figure.canvas.mpl_connect('button_press_event', on_calck)
    ani = FuncAnimation(figure, update_screen, interval=50, blit=True)
    plt.show()

Python跳一跳小游戏的更多相关文章

  1. 用C#实现微信“跳一跳”小游戏的自动跳跃助手

    一.前言: 前段时间微信更新了新版本后,带来的一款H5小游戏“跳一跳”在各朋友圈里又火了起来,类似以前的“打飞机”游戏,这游戏玩法简单,但加上了积分排名功能后,却成了“装逼”的地方,于是很多人花钱花时 ...

  2. Python开发转盘小游戏

    Python开发转盘小游戏 Python  一 原理分析 Python开发一个图形界面 有12个选项和2个功能键 确定每个按钮的位置 每个按钮的间隔相同 点击开始时转动,当前选项的背景颜色为红色,其他 ...

  3. charles刷分微信跳一跳小程序对https的理解

    以前以为只要安装了https 客户端与服务端的数据会被加密就安全了 事实上 只要任意一款抓包工具 并伪造证书  就可以解密这个被所谓https加密的数据 如  可以下载charles的根证书  作为伪 ...

  4. 用Python实现童年小游戏贪吃蛇

    贪吃蛇作为一款经典小游戏,早在 1976 年就面世了,我最早接触它还是在家长的诺基亚手机中.

  5. 教你用Python自制拼图小游戏,一起来制作吧

    摘要: 本文主要为大家详细介绍了python实现拼图小游戏,文中还有示例代码介绍,感兴趣的小伙伴们可以参考一下. 开发工具 Python版本:3.6.4 相关模块: pygame模块: 以及一些Pyt ...

  6. python 小鸡飞行小游戏

    python 小鸡飞行小游戏 用空格键控制小鸡飞行 代码 import pygame.freetype import sys import random pygame.init() screen = ...

  7. python跳一跳辅助学习

    微信跳一跳辅助工具 准备工具 adb驱动 安卓手机 打开手机的调试模式 usb接好手机和电脑 PyCharm:全宇宙唯一一款专门用于Python开发IDE工具 实现原理: 获取手机的实时的截图 点击起 ...

  8. 利用Python完成一个小游戏:随机挑选一个单词,并对其进行乱序,玩家要猜出原始单词

    一 Python的概述以及游戏的内容 Python是一种功能强大且易于使用的编程语言,更接近人类语言,以至于人们都说它是“以思考的速度编程”:Python具备现代编程语言所应具备的一切功能:Pytho ...

  9. python 面向对象编程 - 小游戏

    面向对象写的小游戏 欢迎玩耍 class Omnicience: camp = 'Omniscience' def __init__(self, name, atk=100, hp=1000, mp= ...

  10. 上班无聊,自己用python做个小游戏来打发时间

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取t.cn ...

随机推荐

  1. springboot docker打包镜像

    首先在idea中创建springboot项目,pom文件packaging 为jar ,然后编写接口. 编写Dockerfile 注意Dockerfile只能这样命名. 使用maven打包命令或者使用 ...

  2. npm不是内部或外部命令,也不是可运行的程序的解决办法

    通常是nodejs没有安装导致 转载https://segmentfault.com/a/1190000023390756 1.Node.js简介 Node.js 是一个基于 Chrome V8 引擎 ...

  3. stl关联式容器的接口和实现

    红黑树的实现就不再记录了,详情可以去github上面翻翻源代码 set的接口和实现: map的接口和实现: hash_set接口与实现 hash_map接口和实现:

  4. HTML中javascript的<script>标签使用方法详解

    只要一提到把JavaScript放到网页中,就不得不涉及Web的核心语言--HTML.在当初开发JavaScript的时候,Netscape要解决的一个重要问题就是如何做到让JavaScript既能与 ...

  5. PS 查看进行状态

    原文:https://blog.csdn.net/lyndon_li/article/details/114295654 ps 查看进行状态有如下几种: ... PROCESS STATE CODES ...

  6. RabbitMQ 修改密码

    C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.14\sbin> rabbitmqctl.bat change_password adm ...

  7. 遇到端口占用无法启动IIS Express服务器

    报错图片: 上图所述由于端口被占用无法完成IIS Express的输出 这时候要考虑到自己在Windows的IIS 是不是配置了该端口? 很明显,就是配置了一个8091的端口且还在启动中,这时候要先将 ...

  8. 本地开发环境使用redis

    1.使用cmd 连接后,查询结果出现乱码时, 尝试连接时加--raw 参数 2.如果还是乱码,设置cmd 窗口编码 chcp 65001 就是换成UTF-8代码页chcp 936 可以换回默认的GBK ...

  9. c# reflect里面的getValue()参数

    Type ty = t.GetType(); PropertyInfo[] PropertyInfo = ty.GetProperties(); string Typename = typeof(T) ...

  10. C语言学习记录(三)

    C语言学习记录(三) 一.知识要点(数据类型.运算符与表达式) 1.C语言的数据类型 C语言数据结构有:基本类型.指针类型.构造类型和空类型.其中基本类型:查看书籍的22页表3-1. C语言的基本数据 ...