世界杯2022是哪个国家_国足世界杯出线 - dtfyjq.com

  • 首页
  • 北京世界杯
  • 世界杯新秀
  • 世界杯16强名单

最新发表

  • 纪元1404 免安装绿色版
  • 奔驰车顶off是什么意思?
  • 信息技术
  • 命运方舟套装怎么选择
  • 电子商务工资一般多少
  • 圪垛的意思
  • 怎样家庭酿酒?酿酒的五个步骤
  • app store充值以后,一直显示“待处理”,怎么办? ( 苹果店充值成功后显示 待处理 是啥意思 )
  • 机制探究:扫射时,不同步枪的握把应该怎么选?
  • Sony a6300和Sony a6500应该如何选择?

友情链接

Copyright © 2022 世界杯2022是哪个国家_国足世界杯出线 - dtfyjq.com All Rights Reserved.

别怕手速慢了,我用Python自动抢红包

北京世界杯 · 2025-08-14 22:05:17

相信大家在节假日期间都会和亲戚朋友互发红包吧,有时候是给个人发红包,有时候是在群里抢红包,其实大家都知道真正的意义并不在于红包里的那点钱,最重要的是红包增进了相互之间的感情,并且还增添了几分节日气氛。

但是气氛归气氛,总是让你抢到最小的红包,或者当你看到红包的时候已经被抢光了,这时我们难免会有些不愉快。怎么办呢?别忘记我们有Python啊,号称除了生孩子其余的都会的一种编程语言!

抢红包不得不提一个Xposed框架,它可以说是专为抢红包而生的,但是很有点难受的是:使用Xposed框架有一个前提条件就是手机需要root,所以如果你是苹果手机,那么就需要越狱了,但是手机想要越狱就比较难,尤其是苹果这种国外品牌的手机,想要越狱难度就更大了。

为了自动抢红包,python能帮我们实现吗?

答案是肯定的,本文就带大家一起探索下用Python如何实现自动抢红包。

1 环境

操作系统:Windows

Python版本:3.7.2

手机系统:Android

2 需求分析

制定的需求就是实现自动抢红包,打开微信,然后进入到要抢红包的群聊,识别群中的微信红包,再执行抢红包的动作就行。

当然这只是抢红包的关键动作,怎么实现还需要一步一步来,值得一提的是电脑版微信没有抢红包这个功能,所以还是需要通过电脑控制手机来自动抢,那就要确保「adb」命令可正常执行。

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

3:前置准备

3.1 打开手机的USB调试

想要使用「adb」,需要打开手机的USB调试功能,然后在设置中会出现手机系统设置的“开发人员选项”。

在手机上打开USB调试后,接下来我们通过Airttest IDE验证 adb 运行是否正常。

3.2 下载安装Airtest

下载地址:http://airtest.netease.com/

下载之后,解压打开就可以使用。

使用AirtestIDE对Android应用进行操作,先连接Android设备。

4 抢红包流程回顾

打开微信,在最左侧的Tab页,微信消息列表,我们需要从这里选择指定的群聊来抢红包。

分析下里面的元素标识:

▲聊天页面中整体的群聊消息的元素标识

▲聊天页面中单个群聊消息的元素标识

接下来在要抢红包的群中,识别红包并执行抢红包的操作。

先看下红包标识:

▲红包标识1:com.tencent.mm:id/aql

▲红包标识的示例2 :com.tencent.mm:id/aql

点击红包,记录下弹出的红包页面中“开”的标识

▲大红包页面中”开“的标识 com.tencent.mm:id/d02

这里需要添加一个判断,检测这个红包是不是有效红包,如果已经被领取完,或者已经被自己领取,还是就是指定领取人的红包,在执行的时候就可以跳过。

▲已领取红包的标识 com.tencent.mm:id/apk

▲已被领完红包的标识 com.tencent.mm:id/apk

我们用的各元素的标识都已取到,接下来就是组织我们的代码。

5 代码梳理

# 打开手机微信

poco(text='微信').click()

#获取当前页面中所有所有群聊的名称

群聊消息的元素标识Chat_msg = poco(name='com.tencent.mm:id/d1v').offspring('com.tencent.mm:id/b6e')

# 获取当前页面中所有群聊的名称

Chat_names = []

Chat_names = list(map(lambda x: x.get_text(), Chat_msg))

# 指定抢红包的群聊名称

chat = input('请指定群聊名称:')

if chat in Chat_names:

index = Chat_names.index(chat)

# 点击进入指定的群聊

Chat_msg[index].click()

在微信聊天页面中,获取当前页面中的所有消息元素。

msg_list = poco("android.widget.ListView").children()

#遍历消息并查找红包

for msg in msg_list:

# 微信红包的标识

LuckyMoney = msg.offspring('com.tencent.mm:id/aql')

# 已失效红包(比如已领取、已被领完)的标识

Invalid = msg.offspring('com.tencent.mm:id/aqk')

# 判断红包是否有效并抢起来!

if LuckyMoney:

pass

#遍历消息并查找红包

if Invalid.exists() and (Invalid.get_text()=='已领取' or Invalid.get_text()=='已被领完'):

print(f'红包已无效,跳过……')

continue

else:

print(f'发现一个新红包,抢起来!')

poco("com.tencent.mm:id/d1v")

msg.click()

click_open = poco("com.tencent.mm:id/d02")

if click_open.exists():

click_open.click()

keyevent('BACK')

#初始化程序

from airtest.core.api import *

auto_setup(__file__)

from poco.drivers.android.uiautomation import AndroidUiautomationPoco

poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】


天骄直播
list的中文翻译及用法