itchat 不能用,微信自动回复如何实现?用 WechatPCAPI 就可以!
发布日期:2021-06-30 11:42:42 浏览次数:2 分类:技术文章

本文共 1659 字,大约阅读时间需要 5 分钟。

在之前的文章 中,我们使用 WechatPCAPI 做了获取微信好友信息以及查看撤回消息,本文我们再使用 WechatPCAPI 来实现微信自动回复的功能。

实现自动回复的功能,我们需要用到图灵机器人,网址为:http://www.turingapi.com,我们在浏览器中输入上述网址打开,之后点击注册/登录按钮,如下图所示:

打开后如下图所示:
我们接着点击立即注册,就跳转到了注册页,如下图所示:
我们先填写必填信息,填写完之后点击注册按钮即可,注册成功之后便跳到了机器人管理页面,如下所示:
我们点击创建机器人按钮跳转到如下页面:
我们填写完相应信息之后点创建按钮,之后会跳转到机器人设置页面,如下图所示:
我们需要记录下 apikey

有了 apikey,我们就可以实现自动回复功能了,实现代码如下所示:

import time, logging, random, requestsfrom queue import Queuefrom WechatPCAPI import WechatPCAPIlogging.basicConfig(level=logging.INFO)queue_recved_event = Queue()def on_message(msg):    queue_recved_event.put(msg)# 机器人返回消息def reply_msg(receive_msg):    apikey = '自己的apikey'    apiurl = 'http://www.tuling123.com/openapi/api?key=%s&info=%s' % (apikey, receive_msg)    result = requests.get(apiurl)    result.encoding = 'utf-8'    data = result.json()    return data['text']def login():    pre_msg = ''    # 初始化微信实例    wx_inst = WechatPCAPI(on_message=on_message, log=logging)    # 启动微信    wx_inst.start_wechat(block=True)    # 等待登陆成功,此时需要人为扫码登录微信    while not wx_inst.get_myself():        time.sleep(5)    print('登陆成功')    while True:        msg = queue_recved_event.get()        if 'msg::single' in msg.get('type'):            data = msg.get('data')            if data.get('is_recv', False):                msgfrominfo = data.get('msgfrominfo')                if msgfrominfo is not None:                    wx_id = msgfrominfo.get('wx_id')                    if wx_id != 'weixin':                        receive_msg =str(data.get('msgcontent'))                        reply = reply_msg(receive_msg)                        wx_inst.send_text(to_user=wx_id, msg=reply)

看一下实现效果:

作者:程序员野客

公号:Python小二
链接:

转载地址:https://ityard.blog.csdn.net/article/details/106299005 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:一行命令给猎狐 F4 带口罩 & 检测是否带口罩
下一篇:经典飞机大战如何编码实现?可以用 Python 写一个!

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月16日 11时48分46秒