• python跳一跳辅助学习


    微信跳一跳辅助工具

    准备工具

    • adb驱动
    • 安卓手机
    • 打开手机的调试模式
    • usb接好手机和电脑

     

    PyCharm:全宇宙唯一一款专门用于Python开发IDE工具

     

    实现原理:

    • 获取手机的实时的截图
    • 点击起始位置和落地位置
    • 计算两个点的距离
    • 计算按压时间
    • 发送按压指令
    • 重新刷新手机截图
    实现代码:
    import os
    import PIL,numpy
    import  matplotlib.pylab 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 340 490 340 490 {}'.format(int(distance*1)))
        #手机的单击位置,0 0 0 0 0 ,x轴y轴滑动后的xy轴单击时间
    
    
    def on_calck(event, coor=[]):#绑定鼠标的单击事件[(x,y)(x2,y2)],
        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()
     
    详情:
    https://github.com/wangshub/wechat_jump_game
  • 相关阅读:
    Elasticsearch集群+kibana
    kafka集群搭建
    Zookeeper集群搭建
    Hadoop+Hbase+Zookeeper分布式存储构建
    正则文本处理
    Haproxy+keepalived高可用集群实战
    httpsqs消息队安装
    LVS-TUN模式
    一.4.序列化使用之机柜资源及序列化高级用法
    一.3.序列化使用之idc资源与api文档
  • 原文地址:https://www.cnblogs.com/safran/p/8215227.html
Copyright © 2020-2023  润新知