bizercsdn 2019-04-03
自从有了红包,人们从线下抢到线上,逢年过节,通过某社交软件抢红包,也成了一种习惯,下面小编给大家介绍一下某位Python大神写的某社交平台的红包提醒神器。
第一部分,接收红包提醒消息(下面有效果预览图)
抢红包一般是在手机上,但是直接从手机获取相应数据是比较麻烦的,所以主要还是通过网页版的某社交平台来获取,也因为平台限制,网页更容易被抓取数据和使用,主要是这种方式,而且使用比较的库是itchat、wxpy,我主要是用itchat,通过pip来安装。
核心代码:
importitchat
@itchat.msg_register('Note', isGroupChat=True)
defget_note(msg):if'红包'inmsg[ 'Text']: print( 'note:',msg[ 'Text']) alarm() # 自定义提醒
itchat.auto_login(hotReload= True)itchat.run()itchat.logout()
msg_register是注册消息时间的响应函数
'Note'是红包、转账等通知消息类型
isGroupChat=True包含了群聊
当该网页版的社交平台收到红包之后,就会提示:收到红包,请在手机上查看。
所以判断消息文本中包含“红包”字样时,就发出提醒。
提醒一下:由于是网页版运行,所以在代码运行之后,需要用手机二维码登录。
第二部分,发通知(下面有效果预览图)
发通知很简单,就是发出声音,一般来Python中会有几种不同的实现:
defalarm():
# Windows嗡鸣声importwinsound winsound.Beep( 1000, 3000)
# Mac语音importos os.system( 'say "有人发红包了,赶紧去抢啊!"')
# 播放MP3importpygame pygame.mixer.init() track = pygame.mixer.music.load( 'alarm.mp3') pygame.mixer.music.play()
发出声音需要调用系统接口,要注意的是Windows和 Mac有不同的实现,或者也可以通过pygame播放 MP3 文件。上面三种方法保留一种即可。
如果还是不满足,可以再写个弹窗:
importtkinter.messagebox tkinter.messagebox.showinfo( '重要提醒', '有人发红包啦!')
以上是Python红包提醒神器的效果预览,但是不是自动抢红包哦!自动抢红包要复杂很多。