基于Python实现微信自动回复功能

 更新时间:2022年06月11日 15:16:25   作者:Python学习与数据挖掘  
这篇文章主要为大家详细介绍了Python如何通过WechatPCAPI来实现微信自动回复的功能,文中的示例代码讲解详细,快跟随小编一起动手尝试一下

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

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

打开后如下图所示:

我们接着点击立即注册,就跳转到了注册页,如下图所示:

我们先填写必填信息,填写完之后点击注册按钮即可,注册成功之后便跳到了机器人管理页面,如下所示:

我们点击创建机器人按钮跳转到如下页面:

我们填写完相应信息之后点创建按钮,之后会跳转到机器人设置页面,如下图所示:

我们需要记录下 apikey。

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

import time, logging, random, requests
from queue import Queue
from WechatPCAPI import WechatPCAPI

logging.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实现微信自动回复功能的详细内容,更多关于Python微信自动回复的资料请关注脚本之家其它相关文章!

相关文章

  • DJANGO-URL反向解析REVERSE实例讲解

    DJANGO-URL反向解析REVERSE实例讲解

    在本篇文章里小编给大家整理的是一篇关于DJANGO-URL反向解析REVERSE的相关知识点内容,需要的朋友们学习下。
    2019-10-10
  • Python连续赋值需要注意的一些问题

    Python连续赋值需要注意的一些问题

    这篇文章主要介绍了Python连续赋值需要注意的一些问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • Python数字比较与类结构

    Python数字比较与类结构

    这篇文章主要介绍了Python数字比较与类结构,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-07-07
  • Python中的index()方法使用教程

    Python中的index()方法使用教程

    这篇文章主要介绍了Python中的index()方法使用教程,是Python入门学习中的基础知识,需要的朋友可以参考下
    2015-05-05
  • 详解Python中的array数组模块相关使用

    详解Python中的array数组模块相关使用

    数组并不是Python中内置的标配数据结构,不过拥有array模块我们也可以在Python中使用数组结构,下面我们就来详解详解Python中的array数组模块相关使用
    2016-07-07
  • 如何一键理清大型Python项目依赖树

    如何一键理清大型Python项目依赖树

    这篇文章主要介绍了如何一键理清大型Python项目依赖树,文章围绕主题相关资料展开详细的内容介绍,感兴趣的小伙伴可以参考一下
    2022-06-06
  • Pycharm安装各种库(第三方库)的两种方法

    Pycharm安装各种库(第三方库)的两种方法

    这篇文章主要给大家介绍了关于Pycharm安装各种库(第三方库)的两种方法,Pycharm中通常需要安装很多第三方库,才可以使用相应的拓展功能,需要的朋友可以参考下
    2024-01-01
  • python pandas dataframe 行列选择,切片操作方法

    python pandas dataframe 行列选择,切片操作方法

    下面小编就为大家分享一篇python pandas dataframe 行列选择,切片操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • Python脚本实现监听服务器的思路代码详解

    Python脚本实现监听服务器的思路代码详解

    这篇文章主要介绍了Python脚本实现监听服务器的思路,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • 在Python上基于Markov链生成伪随机文本的教程

    在Python上基于Markov链生成伪随机文本的教程

    这篇文章主要介绍了在Python上基于Markov链生成伪随机文本的教程,是一个基于马尔可夫算法的小实现,充分体现了Python在科学计算中的用途,需要的朋友可以参考下
    2015-04-04

最新评论