学习
实践
活动
工具
TVP
写文章

震惊!原来真的有“抢红包外挂”软件,难怪我总啥也抢不到

看到这个标题,相信大部分人的第一反应就是:真有微信抢红包外挂?

这不马上快过年啦,容妹思来想去,送点啥给各位铁粉呢?最后让我们的蝈蝈写了篇干干干干货,如何用Python实现一个无人监控的外挂,为大家奉上。

这样大家可以该干嘛干嘛,看春晚的看春晚,打麻将的打麻将,嗑瓜子的嗑瓜子,不耽误!微信自动帮你抢红包~

Github上有一款工具可以在安卓手机上运行,原理是监听屏幕变动,点击红包,但是有个缺点,只能到打开那步,最终入手红包还是靠人工点击。作为一个开发总是哪里都要带上电脑咯,哪怕是年会:-)

我们可以用python+安卓模拟器,通过该原理,做一个无人监控的抢红包外挂。

准备工作

语言:Python3

工具:Pycharm,截图工具(QQ),安卓模拟器(网易MUMU)

技术:Opencv2/Opencv3,aircv,pypiwin32

流程概述

模拟器下载微信,登录

找个人发个红包给你,把红包截个图保存

截屏

红包图对比

模拟鼠标点击,完成微信操作

写定时任务

详细实现

先忽悠同事发个红包给我:-)这是最关键的,嘿嘿

然后通过截图工具把红包壳截取下来,开始编写程序

这是需要导入的包

在屏幕指定区域截图并保存,如果大家对性能还有更高需求的话,可以使用win32的API性能提高10倍还多,但是代码量也多很多,我这里直接用PIL图片包两行代码搞定,大家千万别运行我注释那行,为了性能直接使用内存处理图片,而不用将临时图片存放硬盘再读取。

比较关键的一段代码,网上找了个aircv包,通过图像对比找到红包所在位置,这时候红包图片就能使用了,第六行是核心代码,0.99相似度一定要设置,不然系统会疯狂点击已经打开的红包。第七行是我们做的一个判断,如果没有相似图片位置,程序退出,防止内存消耗,以及在无谓的计算时候新的红包出现。倒数第二行按照网上demo会有个float和int的类型不匹配,我这里转换了下。

最核心的代码,因为红包打开和微信返回上一步的按钮显示位置都是固定的,比较简单,最难的是第一步定位,蝈蝈家里的笔记本貌似是弧形的,红包在上方计算为啥会少,红包在下方计算位置会多,加了很多判断语句,公司电脑就很简单,一步搞定。Time.sleep()让电脑暂停下,毕竟红包动画也有时间,大家可以根据实际需要进行调试。

难点反而是win32的安装通过pip安装以后pycharm不认,百度以后找到方法“pipinstall pypiwin32”

这是家里的电脑,调了很久很久

这是main方法,很简单

Pycharm好是好,但是极端占用内存,我们在抢红包关键时刻能省则省

这是一个运行跑批的代码,设定每秒运行我刚才写的python代码,我们需要在windonws命令行里运行。

终于程序写完啦,我们需要调试下

我们先打开模拟器进入要发红包的群,在命令行里运行之前的批量程序

看到了嘛?我比发红包的人还快抢到红包,哈哈

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180209A10MFG00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券