测试设备:雷电模拟器 4.0版本
分辨率:无要求
使用插件:jsd插件
脚本效果图:
基本原理:
第一步:在列表页寻找消息中含有[微信红包]的群。
第二步:进入群聊,遍历获取所有红包的节点,包括领取过的红包和未领取的红包
第三步:检测红包节点是否有已领取这个节点信息,如果没有说明是新的红包可以领取
第四步:点击未打开的红包领取,然后退回到消息列表页。
脚本源码:向右滑动可查看全部源码
Import "jsdvip.luae"jsdvip.StartServer For 1000 Dim Ret,Info() If jsdvip.click("By.textContains('[微信红包]')",1000) Then TracePrint "有红包" Delay 200 Ret = jsdvip.FindNodeS("By.res('com.tencent.mm:id/asn')","node",2000) If Ret Then dim arr=jsdvip.ForeachNodes("node") For Each k In arr If jsdvip.FindLv(k, 1) Then TracePrint "已经领取过了" Else dim bounds= jsdvip.FindNodeInfo(k,"rect") Tap bounds(0), bounds(1) Delay 1000 jsdvip.click "By.res('com.tencent.mm:id/d5a')", 2000 Delay 1000 KeyPress "back" Delay 200 KeyPress "back" Delay 200 End If Next End If Delay 500 Else TracePrint "还没有红包" End IfNext
注意:理论上来说这个脚本是一个全分辨率的脚本,但是由于不同系统和不同版本的微信可能存在节点id命名不同的情况,所以如果不能使用修改一下节点id名即可。
3分钟学堂vip②群(242971687)已经开通,在学习过程中有基础问题需要解答的朋友,可以加入此群,群费48.8元
加群联系我:
QQ:453485278
微信:xiaomu86119
本脚本需要的jsd插件已经上传到群中。
更多按键精灵安卓版的内容可以查看我的往期文章教程。