简单步骤比别人抢红包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成为你在红包活动中的利器,享受更加便捷的抢红包体验吧!

相关文章
|
小程序
二二复制的七人拼团系统 | 拼团返红包商城模型系统小程序定制开发部署
留意拼团系统的小伙伴应该注意到,最近有款新拼团模式很受欢迎。它就是结合拼团和二二复制的七人拼团系统,设置了直推和间推奖励,有效促进用户主动积极裂变和团队平台引流提升销量的效果。平台还具有帮扶互助、自动轮回复投,循环不断等特点,增加用户粘度和提高商品复购率。
|
7月前
阿里云发票怎么开?刚开完,非常简单,分享给大家!
阿里云用户可在用户中心的发票管理页面开具电子或纸质发票。首次开票需设置发票抬头,支持个人或企业,可选增值税普通或专用发票。个人账号无法直接开企业发票,需变更实名认证。发票税率因产品而异,通常为6%或13%。发票抬头可修改,纸质发票邮寄费用视情况而定,电子发票同样具备法律效力。详情见阿里云帮助中心。
857 0
|
NoSQL Redis
淘东电商项目(75) -秒杀系统(用户操作频率限制)
淘东电商项目(75) -秒杀系统(用户操作频率限制)
58 0
|
消息中间件 缓存 NoSQL
【红包雨压测】提供2万用户30秒内5次请求的并发服务支持
【红包雨压测】提供2万用户30秒内5次请求的并发服务支持
168 0
|
算法 Python
算法创作|模拟商品加入购物车并结算价钱问题解决方法
算法创作|模拟商品加入购物车并结算价钱问题解决方法
108 0
算法创作|模拟商品加入购物车并结算价钱问题解决方法
|
存储 算法 测试技术
测试你的红包代码
最简单直接的方法就是,调用一下代码,给一组输入数据,把结果打印出来,肉眼看一看是不是正确。
|
安全 Java PHP
拼团抽奖模式开发源码规则分析
团系统开发的信息和资源。
|
存储 Java 双11
整点发放优惠券怎么做?必须用到这个谷歌Map神器
11月的双十一,12月的双十二,打折不断,优惠不停。电商系统中发放优惠券,是一个比较常见的功能。今天讲一个优惠券开发实战。
整点发放优惠券怎么做?必须用到这个谷歌Map神器
|
JSON 前端开发 NoSQL
高并发-【抢红包案例】之一:SSM环境搭建及复现红包超发问题
高并发-【抢红包案例】之一:SSM环境搭建及复现红包超发问题
67 0
|
SQL 监控 NoSQL
高并发-【抢红包案例】之三:使用乐观锁方式修复红包超发的bug
高并发-【抢红包案例】之三:使用乐观锁方式修复红包超发的bug
148 0