为了方便,很多人都会有两个微信,一个是生活上用了朋友亲人交流,一个是在工作中使用。特别是需要对外联系客户的人,经常会在半夜收到客户的问题咨询,我们又不能一直守在手机前,时时刻刻给客户回复。这个时候,如果你会python编程,只需要十几行代码就能做到24小时自动回复,而且回复的内容可以自己定义。
那应该怎么做?接下来就开始编程吧!
python版本: 3.6.0
编辑器: pycharm
项目所需要的环境安装包
pip install itchat==1.2.32
pip install wxpy==0.3.9.8
目前不支持小号登录,至少你的微信得实名认证才能使用这个API。
第一步:导入相关的python包
#coding:utf-8
from wxpy import *
import itchat
python包的作用:
itchat: 是一个开源的微信个人号接口,使用python调用微信从未如此简单。
wxpy: wxpy 在 itchat 的基础上,通过大量接口优化提升了模块的易用性,并进行丰富的功能扩展。
第二步:导入相关的设置自动回复的内容
def get_response_sample(user_name, content):
"""根据content内容,拿到回复内容"""
rnt_text = str(content).replace("吗", '')
rnt_text = rnt_text.replace("?", "!").replace("?", "!")
return rnt_text
get_response_sample() 函数的作用是通过判断微信接收信息,返回指定的回复消息。这里只是提供一个简单的例子,大家可以根据自己的需求,做成单一回复的模板。或者参考我之前那篇文章《我用了100行Python代码,实现了与女神尬聊微信(附代码)》,接入智能回复。
这里为何不把所有代码贴出来,因为这些代码就是一块块的砖,编代码的时候,分模块写,不会被业务影响。等要在实际项目上使用时,就可以直接使用,把之前做的砖,一块一块砌起来。
第三步:接入微信API
@itchat.msg_register(itchat.content.TEXT)
def text_reply(msg):
print(msg)
response_msg = get_response_sample(msg["FromUserName"], msg["Text"])
print(response_msg)
itchat.send_msg(response_msg, msg['FromUserName'])
这里是接入微信api的回调函数,就是微信每接受一条信息,就会调用该函数一次。为了方便测试,这里把接收到的信息都打印出来。有兴趣的朋友可以研究一下,这里不过多介绍。
第四步:主函数
if __name__ == '__main__':
itchat.auto_login(False)
itchat.run()
写个主函数,让程序跑起来。这里 itchat.auto_login(False) 是指,每次运行程序,都要重新扫码登录,如果换成True,就不用重复扫码,会保留登录状态。
程序演示
结语
同样一个功能,为何资深程序员开发要一个小时,新手却要一天?原因就在于,很多代码只要之前写过,就不用重复写,或者只需要少量修改,就能在新项目用得上。所以,不断完善自己代码库,为成为一个合格的程序员加油。