python编写红包金额程序(用Python写个红包提醒)

每当群里的红包下起了红包雨

python编写红包金额程序(用Python写个红包提醒)(1)

python编写红包金额程序(用Python写个红包提醒)(2)

打开手机,发现红包 已被抢完

python编写红包金额程序(用Python写个红包提醒)(3)

感觉自己错过了一个亿........

python编写红包金额程序(用Python写个红包提醒)(4)

安卓上有不少红包助手工具,但 iOS 似乎没有。而且就算有,这种需要很高权限的第三方插件工具也总让人不那么放心。所以我还是自己来做一个好了。如果要求不那么高,只要在出现红包的时候发出提醒,那么实现起来并不复杂。

实现代码主要有两个部分:

1.接收红包消息

直接从手机端微信获取数据比较麻烦,主流的方法都是通过微信网页版来获取。因为网页版的消息接口可以被抓包分析,比较容易获取和使用。目前主流的包都是通过这个方式,使用比较多的库有 itchatwxpy。这里我用的是 itchat,通过 pip 即可安装

项目地址:

https://github.com/littlecodersh/ItChat

核心代码:

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包含了群聊

当网页版收到红包后,会显示“收到红包,请在手机上查看”。所以判断消息文本中包含“红包”字样时,就发出提醒。

由于是基于网页版运行,代码运行后,需要用手机扫二维码登录

2.发通知

最简单的通知方法就是发出声音,在 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()

发出声音需要用到调用系统接口,WindowsMac有不同的实现,或者也可以通过 pygame播放 MP3 文件。上面三种方法保留一种即可。

还嫌不够的话,可以弹个窗:

importtkinter.messagebox tkinter.messagebox.showinfo( '重要提醒', '有人发红包啦!')

不过由于大量自动化营销机器人都在使用微信网页版接口,现在网页版的功能已被删减许多,且刚注册的新号已无法登录网页版。有传言说可能之后会取消网页版,就像之前的 Web QQ。你在使用 itchat 的时候要注意:

  1. 不要频率过高过快的发送消息,也是有很大概率被限制网页版登录
  2. 登录状态有可能掉线,而且掉线是不会有通知的
  3. 不支持领取红包
  4. 切勿拿来做什么不好的事情(凭现在的功能其实也做不了啥)

自动抢红包实现起来就要复杂很多,需要从安卓 APP 层面入手。而且这本身也有风险,据说抢得太快是有可能被系统识别限制账号的红包功能,所以请谨慎尝试。我这里也不多说了。

如果你真想自动抢,我给你指条明路:

python编写红包金额程序(用Python写个红包提醒)(5)

python编写红包金额程序(用Python写个红包提醒)(6)

不用谢!

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页