Python自动回复微信好新年祝福

浏览: 1587

作者:Ahab

公众号:Ahab杂货铺

马上就要过年了,好多小伙伴都已经顺利到家,准备过新年。在这提前祝大家:新年快乐。

昨天发现自己的itchat终于可以登陆了(差不多被封了两个月),马上就要过年了,必须用itchat搞点事情--实现自动回复微信好友新年祝福。当然除了这个还可以做个祝福语群发助手,但是比较怂怕再次被封,毕竟上次就是因为群发被封的。话不多说,来看今天的程序。


程序介绍


先上图让大家感受一下

这是第三次写关于itchat的文章了,没什么技术含量,照着API写就可以,程序的功能简单地说就是当微信好友给你发新年祝福时,你随机回复一条祝福语,同时,自动回复过的好友不再回复,祝福语前面会加上微信好友的备注/昵称,这样看起来不是特别像自动回复。用到的模块:itchat模块、requests模块以及一些Python自带的模块。


具体实现

获取新年祝福语

也许大家会有疑问自动回复的祝福语从哪获取呢?给大家推荐一个神奇的网站爱集合数据

传送门:

http://www.xjihe.com/home/api

我们用到的祝福语就是通过这个网站来获取。

具体获取哪种数据,网站已经做了很详细的说明,大家照着实现就可以,然后apiKey需要自己注册获取。

1# 获取新年祝福语
2def GetRandomGreeting():
3    res = requests.get("http://www.xjihe.com/api/life/greetings?festival=新年&page=10", headers = {'apiKey':'sQS2ylErlfm9Ao2oNPqw6TqMYbJjbs4g'})
4    results = res.json()['result']
5    return results[random.randrange(len(results))]['words']

通过requests进行请求,获取新春祝福语,使用random随机生成。

发送新年祝福语

1# 发送新年祝福语
2def SendGreeting(msg):
3    global replied
4    friend = itchat.search_friends(userName=msg['FromUserName'])
5    if friend['RemarkName']:
6        itchat.send((friend['RemarkName']+','+GetRandomGreeting()), msg['FromUserName'])
7    else:
8        itchat.send((friend['NickName']+','+GetRandomGreeting()), msg['FromUserName'])
9    replied.append(msg['FromUserName'])

信息的发送通过itchat来实现,关于itchat之前做过很多次介绍,消息的发送在智障机器人的文章已经做了详细介绍,这一模块比较简单,大家也可以参照API来实现。

API:

https://pypi.org/project/itchat/1.0.11/


 1# 文本消息
2@itchat.msg_register([TEXT])
3def text_reply(msg):
4    if '年' in msg['Text'and msg['FromUserName'not in replied:
5        SendGreeting(msg)
6
7
8# 其他消息
9@itchat.msg_register([PICTURE, RECORDING, VIDEO, SHARING])
10def others_reply(msg):
11    if msg['FromUserName'not in replied:
12        SendGreeting(msg)

这里做了一个简单的判断,如果对方给你发送的消息中含有【年】,就认为是对方给你发送新春祝福,实现自动回复,当然你也可以将这个判断条件设置的更加准确。如果收到图片,语音,视频,表情包等消息,则不会自动回复。

写在最后

完整代码已经上传到Github:

https://github.com/AhabWang/AhabCode

友情提示:不要频繁操作,有禁止登录的风险,亲测!

Python的爱好者社区历史文章大合集

2018年Python爱好者社区历史文章合集(作者篇)

2018年Python爱好者社区历史文章合集(类型篇)

福利:文末扫码立刻关注公众号,“Python爱好者社区”,开始学习Python课程:

关注后在公众号内回复课程即可获取:

小编的转行入职数据科学(数据分析挖掘/机器学习方向)【最新免费】

小编的Python入门免费视频课程!!!

小编的Python快速上手matplotlib可视化库!!!

崔老师爬虫实战案例免费学习视频。

陈老师数据分析报告制作免费学习视频。

玩转大数据分析!Spark2.X+Python 精华实战课程免费学习视频。

推荐 0
本文由 Python爱好者社区 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册