大数据文摘出品
作者:曹培信
为了响应国家号召,今年过年不出去拜年,不出去走亲戚,开启了“云拜年”新模式。
从年三十到今天,手机上的拜年消息就没停过,大多还是群发,不回复显得很没有礼貌,一一回复又累心劳神。
甚至因为出不了门,七大姑八大姨就更闲了,“云催婚”、“云催娃”也应运而生,如果你也在为此而烦恼,那么你就需要一款能够自动回复拜年信息的小程序,最好还能自动回复各种微信消息,应对七大姑八大姨的花式催婚和催娃。
这么小小的要求,Python当然可以做到,itchat包帮你解决一切,没有安装的同学需要先安装,用Python操作微信真是好玩到停不下来!
具体思路就是现在图灵机器人网站上注册一个账号,记下自己的key码,代码中要用到。然后在Python中用itchat登录微信,当接受到消息后(可以简单用个if函数设置只对特定好友有效),提交到图灵机器人网站并得到回复,而后将此回复再发送给好友。
- #引入itchat包
- import requests
- import itchat
- #自动登陆(括号内参数可以保持一段时间登录状态)
- itchat.auto_login()
- #name = itchat.search_friends(name=u'曹培信')
- #XiaoMing = name[0]["UserName"]
- #message_concent = 'Hey,dude'
- #itchat.send(message_concent,XiaoMing)
- KEY = '440a48c5f559402ea4a0ce9a5dda7fa3'
- def get_response(msg):
- apiUrl = 'http://www.tuling123.com/openapi/api'
- data = {
- 'key' : KEY,
- 'info' : msg,
- 'userid' : 'wechat-robot',
- }
- try:
- r = requests.post(apiUrl, datadata=data).json()
- return r.get('text')
- except:
- return
- @itchat.msg_register(itchat.content.TEXT)
- def tuling_reply(msg):
- defaultReply = 'I received: ' + msg['Text']
- name=itchat.search_friends(name=u'***')
- # ***表示你想进行自动回复的人的微信昵称(备注名)
- xiaoming=name[0]["UserName"]
- if msg['FromUserName']==xiaoming:
- reply = get_response(msg['Text'])
- if '拜年' in msg['Text'] or '新年好' in msg['Text']:
- itchat.send("愿新春以后,吉吉利利,百事都如意。", msg['FromUserName'])
- else:
- return reply or defaultReply
- #itchat.auto_login(hotReload=True)
- itchat.run()
- itchat.logout()
然后,就是设置关键词,一般的拜年信息会包含“拜年”、“新年好”,我们用if '拜年' in msg['Text'] 来进行关键词判断,如果包含这样的拜年信息,则自动回复一条拜年的问候语。
这样,你就得到了一个既能自动回复拜年信息,也可以针对七大姑八大姨扩展功能的自动回复机器人,简直是春节必备之神器,赶紧用起来吧!
【本文是51CTO专栏机构大数据文摘的原创译文,微信公众号“大数据文摘( id: BigDataDigest)”】