来自技术宅的逆袭Python抢红包核心模块大揭秘

490 阅读3分钟


啊~~啊~~谁又在群里发红包啦?


我们在工作学习期间是不是经常错过了很多红包?感觉好几亿都与我们擦肩而过了。一刹那我仿佛看到了红包,但是无奈感慨单身30年的手速还是比不上别人!


作为一个技术宅是可忍孰不可忍!


前言


Xposed框架对于抢红包来说简直是神兵利器,但是事物是有两方面的虽然它方便了我们抢红包但是前提是需要我们手机root,那么对于苹果手机就得越狱了。


无论是越狱还是手机root,都会对我们的手机产生一定的风险性。那么有没有其他的一种方式可以实现抢红包呢?you need Python

环境配置


操作系统:Windows 手机系统:Android Python版本:3.7


实现步骤


识别微信中的消息,是红包还是普通的信息,这里我们通过聊天消息的元素标识来判断。这里我们借助了「Airtest IDE」工具来实现。

第一步:打开手机进入微信群

第二步:识别微信红包

第三步:执行抢红包的动作


准备事项



注意:在识别是微信消息还是红包的过程中,我们这里借助了Airtest IDE这个工具


第一步:打开手机的USB调试


在开发者模式中我们打开USB调试之后。可以用Airttest IDE验证 adb 是否运行正常



下载安装Airtest IDE


AirtestIDE:跨平台的UI自动化测试编辑器


AirtestIDE可以去百度搜索官方网站下载


Airtest IDE的界面如下图



使用AirtestIDE对Android应用进行自动化操作,第一步就需要连接Android设备。

第一步:连接Android真机


第二步:连接面板中的resh ADB 按钮,设备列表将会刷新


第三步:点击列表内对应设备的 Connect 完成连接


抢红包流程


进入微信里,在左侧的Tab页。选择微信群里进行抢红包

在AirtestIDE中,我们可以通过暂停功能,冻结当前的UI树形结构来精确地检视UI控件,我们先来分析下这个页面中元素标识。

在AirtestIDE中 , 我们可以在树形结构中来检查控件,并且分页页面中的



然后在群中识别出红包。进行抢红包



接下来需要识别红包中 "开" 字的元素标识



基本的标识以及元素我们都已经获取到,下面就是我们的核心代码环节


后续



有的童鞋可能觉得安装Airtest IDE这个工具比较麻烦。Python这么强大,我们脱离这个工具也是可以的。那这个时候就需要同学们安装一个第三方模块 pocoui


pip install pocoui


AirtestIDE 创建一个项目时候,设备的类型选中 Android,这样就会生成一个初始化代码


我们自己编写的Python代码中也需要加上这段初始化的代码。


需要注意的是,在执行程序时要确保手机和电脑连接上,并保证 adb 命令正常运行。


核心代码

代码在公众号上,大家关注就可以了~