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的xpath获取div标签内html内容,实现innerhtml功能的方法

python的xpath没有获取div标签内html内容的功能,也就是获取div或a标签中的innerhtml,写了个小程序实现一下: 源代码 [webadmin@centos7 c...

Python 私有函数的实例详解

Python 私有函数的实例详解 与大多数语言一样,Python 也有私有的概念: • 私有函数不可以从它们的模块外面被调用 • 私有类方法不能够从它们的类外面...

python 数据提取及拆分的实现代码

python 数据提取及拆分的实现代码

K线数据提取 依据原有数据集格式,按要求生成新表: 1、每分钟的close数据的第一条、最后一条、最大值及最小值, 2、每分钟vol数据的增长量(每分钟vol的最后一条数据减第一条数据...

处理Selenium3+python3定位鼠标悬停才显示的元素

先给大家介绍下Selenium3+python3--如何定位鼠标悬停才显示的元素 定位鼠标悬停才显示的元素,要引入新模块 # coding:utf-8 from selenium...

python tkinter实现彩球碰撞屏保

python tkinter实现彩球碰撞屏保

利用Tkinter实现彩球碰撞屏保,供大家参考,具体内容如下 一、架构与思路 (1)主函数: main():通过类启动程序; (2)类: ScreenSaver():用于定义屏保和主画布...