欢迎进入访问本站!

Python_微信自动回复祝福语

祝福语 2022-04-09 19:02:1780本站admin

作者 | Ahab 来源 | Ahab杂货铺(ID:PythonLearningCamp) 马上就要

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

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

程序介绍

先上图让大家感受一下

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

具体实现

获取新年祝福语

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

传送门:

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

打开凤凰新闻,查看更多高清图片

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

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

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

发送新年祝福语

# 发送新年祝福语2def SendGreeting(msg):3    global replied4    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:

# 文本消息 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)

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

项目地址:

(本文为AI科技大本营转载文章,转载请联系作者。)

  • 热门标签

  • 免责声明:网站中图片均来源于网络,如有版权问题请联系删除!

    备案号:豫ICP备2022009484号-1 联系方式:486919236@qq.com