简单步骤比别人抢红包quickly一步

简介: 简单步骤比别人抢红包quickly一步

快过年了,又到了抢红包的时候,好多小伙伴发愁抢不到,哄包多是多哇一个也抢不到着实让人无奈。

没办法只好发挥所长,我可不是吃素的,那就只能试试能不能通过编程的方式实现自动化抢哄包了!就这么一试,我们居然成功啦。在本文中,我们将分享一些简单的步骤,让你在红包大战中领先一步。

实现自动化抢红包的基本思路如下:

手动清空之前微信群中的红包记录

执行自动化抢红包程序,首先进入发红包的微信群(可以暂时将其顶置),循环检测群中是否有红包,发现红包则点击红包,没有红包红则不点

检测红包是否被领取(判断点击后的红包是否出现开字),如果红包未被领取,则点击开字领取红包,再返回群聊界面删除已被领取的红包记录;如果红包已被领取,则返回群聊界面删除已被领取的红包记录

环境

本文主要环境如下:

Win11系统

安卓手机

Python3.9

Appium1.5

微信3.8.1.26

如果对环境搭建不熟悉的话,可以看一下:Python + Appium 自动化操作微信入门

用Python找出了删除自己微信的所有人并将他们自动化删除了

实现

下面一起来看一下具体实现。

首先我们·先配置信息,代码实现如下:

desired_caps = {
    "platformName": "Android", # 系统
    "platformVersion": "8.0.0", # 系统版本号
    "deviceName": "m5s", # 设备名
    "appPackage": "com.tencent.mm", # 包名
    "appActivity": ".ui.LauncherUI", # app 启动时主 Activity
    'unicodeKeyboard': True, # 使用自带输入法
    'noReset': True # 保留 session 信息,可以避免重新登录
}

因为点击红包后需要判断点击后的红包是否被领取,即是否有开字,如图所示:

所以我们定义一个判断元素是否存在的方法,代码实现如下:

# 判断元素是否存在
def is_element_exist(driver, by, value):
    try:
        driver.find_element(by=by, value=value)
    except Exception as e:
        return False
    else:
        return True

因为红包无论是被自己领取还是被他人领取,之后我们首先要删除领取的红包记录,所以我们需要定义一个删除已领取红包的方法,代码实现如下:

# 删除领取后的红包记录
def del_red_envelope(wait, driver):
    # 长按领取过的红包
    r8 = wait.until(EC.element_to_be_clickable((By.ID, "com.tencent.mm:id/r8")))
    TouchAction(driver).long_press(r8).perform()
    # 点击长按后显示的删除
    wait.until(EC.element_to_be_clickable((By.ID, "com.tencent.mm:id/gam"))).click()
    # 点击弹出框的删除选项
    wait.until(EC.element_to_be_clickable((By.ID, "com.tencent.mm:id/doz"))).click()

长按领取后红包的效果图如下:

点击长按后显示的删除项之后的效果图如下:

进入红包群后的主程序实现,代码如下:

while True:
    # 有红包则点击
    wait.until(EC.element_to_be_clickable((By.ID, "com.tencent.mm:id/r8"))).click()
    print("点击了红包")
    # 判断红包是否被领取
    is_open = is_element_exist(driver, "id", "com.tencent.mm:id/den");
    print("红包是否被领取:", is_open)
    if is_open == True:
        # 红包未被领取,打开红包
        wait.until(EC.element_to_be_clickable((By.ID, "com.tencent.mm:id/den"))).click()
        # 返回群聊
        wait.until(EC.element_to_be_clickable((By.ID, "com.tencent.mm:id/dm"))).click()
        # 删除领取过的红包记录
        del_red_envelope(wait, driver)
    else:
        # 返回群聊
        driver.keyevent(4)
        # 删除领取过的红包记录
        del_red_envelope(wait, driver)

总结:

利用Python编程,你可以实现比别人更快的速度抢到红包。通过使用网络请求库、解析库、自动化脚本和定时任务,你能够在红包大战中保持领先地位。但请记住,合法合规地使用这些工具,以免产生不良后果。让Python成为你在红包活动中的利器,享受更加便捷的抢红包体验吧!

相关文章
|
小程序
二二复制的七人拼团系统 | 拼团返红包商城模型系统小程序定制开发部署
留意拼团系统的小伙伴应该注意到,最近有款新拼团模式很受欢迎。它就是结合拼团和二二复制的七人拼团系统,设置了直推和间推奖励,有效促进用户主动积极裂变和团队平台引流提升销量的效果。平台还具有帮扶互助、自动轮回复投,循环不断等特点,增加用户粘度和提高商品复购率。
|
缓存 安全 前端开发
十分钟搞懂手机号码一键登录
十分钟搞懂手机号码一键登录
1432 0
|
2月前
|
消息中间件 设计模式 SQL
谷粒商城笔记+踩坑(21)——提交订单。原子性验令牌+锁定库存
完成提交订单功能,并使用分布式事务方案,保证了订单提交的幂等性
谷粒商城笔记+踩坑(21)——提交订单。原子性验令牌+锁定库存
|
2月前
|
消息中间件 NoSQL Java
谷粒商城笔记+踩坑(23)——定时关闭订单
使用MQ延迟队列,实现项目订单的定时关闭,并阐述消息丢失、重复、积压等问题的解决方案
|
6月前
阿里云发票怎么开?刚开完,非常简单,分享给大家!
阿里云用户可在用户中心的发票管理页面开具电子或纸质发票。首次开票需设置发票抬头,支持个人或企业,可选增值税普通或专用发票。个人账号无法直接开企业发票,需变更实名认证。发票税率因产品而异,通常为6%或13%。发票抬头可修改,纸质发票邮寄费用视情况而定,电子发票同样具备法律效力。详情见阿里云帮助中心。
791 0
|
消息中间件 缓存 NoSQL
【红包雨压测】提供2万用户30秒内5次请求的并发服务支持
【红包雨压测】提供2万用户30秒内5次请求的并发服务支持
163 0
DFM分析~好工具分享(抽奖送书!)
DFM分析~好工具分享(抽奖送书!)
124 0
用python实现网站自动签到
用python实现网站自动签到
|
小程序
如何做一个微信答题小程序(三)
嗨!大家好,我是小蚂蚁。今天我们来分享一下如何实现答题功能,包含单选题和多选题的答题,以及如何记录玩家的答题数据。 单选题答题处理 对于单选题来讲,每个选项之间是互斥的,也就是说用户只能从 ABCD 的四个选项中选择一个,不可能同时选择多个。所以在处理单选题答题时,当用户选择了 A 然后又切换到 B 时,此时“选项B”应该是被选中状态,而“选项A”应该是未被选中状态。
276 0
|
移动开发 安全 数据管理
定制开发拼团抽奖H5规则设计解析
定制开发拼团抽奖H5规则设计解析