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

yipeiwu_com6年前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实现csv格式文件转为asc格式文件的方法

python实现csv格式文件转为asc格式文件的方法

一、背景描述 csv格式文件是一种类似于excel的文件格式 asc格式文件是一种可以用text打开的文本文件 csv转asc本来可以用arcgis顺利完成,但由于csv数据量太大(74...

通过实例浅析Python对比C语言的编程思想差异

通过实例浅析Python对比C语言的编程思想差异

我一直使用 Python,用它处理各种数据科学项目。 Python 以易用闻名。有编码经验者学习数天就能上手(或有效使用它)。 听起来很不错,不过,如果你既用 Python,同时也是用其...

Django之编辑时根据条件跳转回原页面的方法

在要跳转的编辑页面: #首先获取当期的url: curr_url = self.request.GET.urlencode() #创建一个QueryDict对象: params =...

对python 矩阵转置transpose的实例讲解

在读图片时,会用到这么的一段代码: image_vector_len = np.prod(image_size)#总元素大小,3*55*47 img = Image.open(pat...

python hashlib加密实现代码

python hashlib加密实现代码

用于加密相关的操作,代替了md5模块和sha模块,主要提供SHA1,SHA224,SHA256,SHA512,MD5算法。 以下是算法示例: #!/usr/bin/env pytho...