使用Python制作微信跳一跳辅助


Posted in Python onJanuary 31, 2018

1.  前言

微信的跳一跳相信大家都很熟悉了,而且现在各种外挂、辅助也是满天飞,反正本人的好友排行榜中已经是八九百都不足为奇了。某宝上一搜一堆结果,最低的居然只要3块多,想刷多少分就刷多少分,真是离谱。

作为一枚程序猿,我决心也自己搞一下,不为别的,一来为了磨练一下自己的解决问题的能力,而来也为了娱乐一下。像这种任务,最适合的当然是Python,丰富的第三方库,而且具有胶水语言的特点。

本程序的主要设计思路就是,PC端adb连接手机→截屏→在PC端展示→用户鼠标选取起点和终点→计算距离、时长→adb发送指令模拟按压→截屏循环。

2.  ADB

adb,Android Debug Bridge,即安卓调试桥,包含如下几个部分:
•Client端, 运行在开发机器中,即你的开发PC机,用来发送adb命令
•Deamon守护进程,运行在调试设备中,即的调试手机或模拟器
•Server端,作为一个后台进程运行在开发机器中,即你的开发PC机,用来管理PC中的Client端和手机的Deamon之间的通信

我们通常用的adb命令指的就是Client端程序。Server端实际上在本机侦听端口5037,将指令通过usb线/wifi转发给移动设备的Deamon进程。

adb命令读者可以去官方网站查看文档(http://adbshell.com/commands),这里只介绍用到的几个命令。

(1)    adb devices列出所有连接的模拟器/设备

Prints a list of all attached emulator/device

adb devices

In response, return serial number and state

e4b25377    device

emulator-5554 device

(2)    adb shell screencap截屏

taking a screenshot of a device display.

adb shell screencap <filename>

adb shell screencap /sdcard/screen.png

download the file from the device将文件从设备下载到本机。

adb pull /sdcard/screen.png

(3)    adb shell input swipe模拟滑动操作(长按)

adb shell input swipe 100 100 100 100 500模拟长按坐标(100, 100)时长500ms

  C:\Documents and Settings\Administrator>adb shell 
  root@NX403A:/ # input 
  input 
  Usage: input [<source>] <command> [<arg>...] 
   
  The sources are: 
     trackball 
     joystick 
     touchnavigation 
     mouse 
     keyboard 
     gamepad 
     touchpad 
     dpad 
     stylus 
     touchscreen 
   
  The commands and default sources are: 
     text <string> (Default: touchscreen) 
     keyevent [--longpress] <key code number or name> ... (Default: keyboard) 
     tap <x> <y> (Default: touchscreen) 
     swipe <x1> <y1> <x2> <y2> [duration(ms)] (Default: touchscreen) 
     press (Default: trackball) 
     roll <dx> <dy> (Default: trackball)

好了,以上是本次所需adb的知识点。

3.  Python

(1)     调用命令行

Python调用命令行有多种方式,比较常用的是os.system(cmd)和os.popen(cmd),以及commands.getoutput(cmd),这三者主要区别在返回值的获取方面,第一个无法获得返回值,第二、三个则可以获取。这里用哪个都可以,因为不需要获得返回值。

(2)     OpenCV

主要用OpenCV做一些图片缩放等操作,用PIL也是可以的。

(3)     Tkinter

主要用到了Button、PhotoImage这两个Widget。不多说了。

程序的实现是很简单的,这里处于某些原因就不公开代码了,主要就是一个细调参数的过程。

程序截图:

使用Python制作微信跳一跳辅助

下一步的目标是,结合OpenCV和神经网络实现自动识别、计算距离。

郑重声明,本文仅供学习、娱乐只用,请勿随意传播。

Python 相关文章推荐
Python脚本实现代码行数统计代码分享
Mar 10 Python
全面分析Python的优点和缺点
Feb 07 Python
Python3多进程 multiprocessing 模块实例详解
Jun 11 Python
Python实现的读取/更改/写入xml文件操作示例
Aug 30 Python
PYTHON绘制雷达图代码实例
Oct 15 Python
pygame编写音乐播放器的实现代码示例
Nov 19 Python
Python通过TensorFLow进行线性模型训练原理与实现方法详解
Jan 15 Python
Python socket连接中的粘包、精确传输问题实例分析
Mar 24 Python
如何使用PyCharm将代码上传到GitHub上(图文详解)
Apr 27 Python
完美解决TensorFlow和Keras大数据量内存溢出的问题
Jul 03 Python
pytorch 6 batch_train 批训练操作
May 28 Python
Django实现聊天机器人
May 31 Python
python模块之paramiko实例代码
Jan 31 #Python
Python进度条实时显示处理进度的示例代码
Jan 30 #Python
Python3生成手写体数字方法
Jan 30 #Python
python字符串的方法与操作大全
Jan 30 #Python
Python实现带参数与不带参数的多重继承示例
Jan 30 #Python
Python实现的随机森林算法与简单总结
Jan 30 #Python
Python决策树和随机森林算法实例详解
Jan 30 #Python
You might like
PHP 数组教程 定义数组
2009/10/23 PHP
第六章 php目录与文件操作
2011/12/30 PHP
基于Linux调试工具strace与gdb的常用命令总结
2013/06/03 PHP
PHP实现多进程并行操作的详解(可做守护进程)
2013/06/18 PHP
php用户注册信息验证正则表达式
2015/11/12 PHP
thinkphp制作404跳转页的简单实现方法
2016/09/22 PHP
Laravel5中Cookie的使用详解
2017/05/03 PHP
php检测mysql表是否存在的方法小结
2017/07/20 PHP
jQuery 研究心得 取得属性的值
2007/11/30 Javascript
onbeforeunload与onunload事件异同点总结
2013/06/24 Javascript
解决window.opener=null;window.close(),只支持IE6不支持IE7,IE8的问题
2014/01/14 Javascript
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
2015/09/06 Javascript
jquery获取文档高度和窗口高度汇总
2016/01/25 Javascript
jquery hover 不停闪动问题的解决方法(亦为stop()的使用)
2017/02/10 Javascript
解决在vue项目中webpack打包后字体不生效的问题
2018/09/01 Javascript
JavaScript 双向链表操作实例分析【创建、增加、查找、删除等】
2020/04/28 Javascript
微信小程序实现聊天室
2020/08/21 Javascript
OpenLayers3加载常用控件使用方法详解
2020/09/25 Javascript
Python命令行解析模块详解
2018/02/01 Python
python 定义给定初值或长度的list方法
2018/06/23 Python
浅谈在django中使用redirect重定向数据传输的问题
2020/03/13 Python
使用python处理题库表格并转化为word形式的实现
2020/04/14 Python
numpy的Fancy Indexing和array比较详解
2020/06/11 Python
理解Django 中Call Stack机制的小Demo
2020/09/01 Python
Pure Collection美国官网:来自英国羊绒专家的奢华羊绒
2017/11/19 全球购物
美国打印机墨水和碳粉购物网站:QuikShip Toner
2018/08/29 全球购物
法雷奥SQA(electric)面试问题
2016/01/23 面试题
临床医学专业学生的自我评价分享
2013/11/21 职场文书
会计学个人自荐信模板
2013/12/13 职场文书
教师产假请假条范文
2014/04/10 职场文书
驻村工作先进事迹
2014/08/14 职场文书
群众路线教育党员自我剖析材料
2014/10/06 职场文书
小班上学期幼儿评语
2014/12/30 职场文书
详解Spring Boot使用系统参数表提升系统的灵活性
2021/06/30 Java/Android
详解JAVA的控制语句
2021/11/11 Java/Android
如何解决php-fpm启动不了问题
2021/11/17 PHP