Python使用微信接入图灵机器人过程解析

yipeiwu_com5年前Python基础

这篇文章主要介绍了Python使用微信接入图灵机器人过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1.wxpy库介绍

wxpy 在 itchat 的基础上,通过大量接口优化提升了模块的易用性,并进行丰富的功能扩展。 文档地址:

https://wxpy.readthedocs.io/

从 PYPI 官方源下载安装

pip install -U wxpy 

2.图灵机器人

首先注册一个账号:http://www.turingapi.com/ ,然后可以创建一个自己的图灵机器人

3.使用微信接入图灵机器人

实现代码

#!/usr/bin/env python
# -*- coding:utf-8 -*-
#time: 2017/08/15 20:53:19
#version 1.0
#__author__:lanlong
#参看网址http://wxpy.readthedocs.io/zh/latest/index.html
import requests
from wxpy import *
import json
import random
robot = Bot()#定义robot对象
#图灵机器人获取回复消息
def talks_robot(info = 'hello worle'):
  api_url = 'http://www.tuling123.com/openapi/api'  #图灵机器人api接口
  apikey = 'your api'     #图灵api密钥
  data = {'key': apikey,
        'info': info}
  req = requests.post(api_url, data=data).text #通过接收消息info,对数据在封装,向灵图机器人发出请求请求,并获得回复
  replys = json.loads(req)['text']      #loads方法是把json对象转化为python对象,dumps方法是把pyhon对象转化为json对象
  return replys                #返回回复数据
@robot.register()#灵图机器人注册注册
def tuling_reply(msg):#回复来自其他好友、群聊和公众号的消息
  defaultReply = '我接受: ' + msg.text  #为了保证在图灵Key出现问题的时候仍旧可以回复,这里设置一个默认回复
  robots = ['——By机器人李', '——By反正不是本人','我是灵图的机器人']#防止误解追加解释,可以去掉
  message = '{}'.format(msg.text)#格式转换,转换为字符串
  replys = talks_robot(info=message)+random.choice(robots)
  return replys or defaultReply
if __name__ == '__main__':
  robot.start()  #开始监听和自动处理消息
  embed()   #进入 Python 命令行、让程序保持运行

4.效果

5.最后

这个图灵机器人,认证后,一天有100次免费调用,玩玩够了。当然,这个机器人,不止应用到微信群,感兴趣可以去了解。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决python xx.py文件点击完之后一闪而过的问题

解决python xx.py文件点击完之后一闪而过的问题

1.问题复现: 有时候我们去点击.py文件 文件里明明有打印信息,却一闪而过,没有任何显示 比如以下内容 #!/usr/local/bin/python import sys pri...

解决Pytorch训练过程中loss不下降的问题

在使用Pytorch进行神经网络训练时,有时会遇到训练学习率不下降的问题。出现这种问题的可能原因有很多,包括学习率过小,数据没有进行Normalization等。不过除了这些常规的原因,...

python中hashlib模块用法示例

我们以前介绍过一篇Python加密的文章:Python 加密的实例详解。今天我们看看python中hashlib模块用法示例,具体如下。 hashlib hashlib主要提供字符加密...

Python创建xml文件示例

本文实例讲述了Python创建xml文件的方法。分享给大家供大家参考,具体如下: 这是一个使用ElementTree有关类库,生成xml文件的例子 # *-* coding=utf-...

在django中自定义字段Field详解

Django的Field类中方法有: to_python() # 把数据库数据转成python数据 from_db_value() # 把数据库数据转成python数据 get_pre_...