Python助你抢红包

回家团圆,春晚、鞭炮、春联等都是春节的传统代名词,但是近两年春节又有了一个新的代名词,那就是“抢红包”。今年春节期间,除了之前微信、支付宝、QQ等发红包平台,百度,头条也纷纷推出了各种抢红包活动。为了除夕夜不错过几个亿的红包,特意下载了一个红包助手,用来提醒自己微信好友发红包的信息,就这样还是败在了手速上。在使用红包助手的时候发现一个缺点:屏蔽的群,发红包时不提醒。作为爱折腾的我,今天就针对红包助手进行了优化,写了一个Python脚本助你抢红包,完美了解决了屏蔽的群,发红包时不提醒的弊端。

 

程序介绍

 

原理很简单,利用itchat登录网页版微信,好友在群里发红包或者好友给你发红包的时候,网页版微信是无法领取红包的,会显示“收到红包,请在手机上查看”。当通知消息类型中有"收到红包"字样时,就可以表明有好友在发红包,这时候电脑会发出提示音提醒你去抢红包。用到的模块:itchat和pygame,代码量在30行左右。

 

具体实现

声音提醒

'''声音提示'''
def voice ():
    pygame.mixer.init()
    pygame.mixer.music.load('voice .mp3')
    pygame.mixer.music.play()

pygame.mixer是一个用来处理声音的模块。游戏中对声音的处理一般包括制造声音和播放声音两部分,我们这里仅仅用到了播放声音部分。init进行初始化,load加载声音文件,play播放声音。

获取群红包信息

'''监控群聊红包(Note参数: 通知消息类型)'''
@itchat.msg_register('Note', isGroupChat=True)
def getNoteGroup(msg):
    if u'收到红包' in msg['Text']:
        print('[INFO]: %s' % msg['Text'])
        voice()

当通知消息中包含收到红包时,会输出“收到红包,请在手机上查看”,同时调用声音播放的方法让电脑播放声音。

获取个人红包信息

'''监控个人红包(Note参数: 通知消息类型)'''
@itchat.msg_register('Note', isGroupChat=False)
def getNote(msg):
    if u'收到红包' in msg['Text']:
        print('[INFO]: %s' % msg['Text'])
        voice()

跟获取群红包信息只有一个参数的区别。

代码简单比较容易理解,不做过多的介绍。

 

写在最后

完整代码已经上传到Github:

https://github.com/AhabWang/AhabCode

  公众号【Ahab杂货铺】后台回复【红包】也可获取源码。

友情提示:

红包千万个,最佳仅一个。

操作不规范,封号两行泪。

不要频繁操作,有禁止登录的风险,亲测!

你可能感兴趣的:(python杂谈)