python调用API实现智能回复机器人


Posted in Python onApril 10, 2018

本文实例为大家分享了python调用API实现机器人的具体代码,供大家参考,具体内容如下

注意事项:

下面代码中的APIKEY需要替换

需要有自己的公众号平台,并且自己成为管理员,

http://www.tuling123.com 

这个网址上要有账号并且创建机器人,在帮助中心里可以获取APIkey,然后填入下方的代码中。

#图灵机器人 
def talks_robot(info = '你叫什么名字'): 
 api_url = 'http://www.tuling123.com/openapi/api' 
 apikey = '4fede3c4384846b9a7d0456a5e1e2943' 
 data = {'key': apikey, 
    'info': info} 
 req = requests.post(api_url, data=data).text 
 replys = json.loads(req)['text'] 
 return replys 
 
#微信自动回复 
robot = Bot() 
# 回复来自其他好友、群聊和公众号的消息 
@robot.register() 
def reply_my_friend(msg): 
 message = '{}'.format(msg.text) 
 replys = talks_robot(info=message) 
 return replys 
 
# 开始监听和自动处理消息 
robot.start()

或者也可以使用下列代码:

# -*- coding: utf-8 -*- 
import requests 
import itchat # 这是一个用于微信回复的库 
 
KEY = '8edce3ce905a4c1dbb965e6b35c3834d' # 这个key可以直接拿来用 
 
 
# 向api发送请求 
def get_response(msg): 
 apiUrl = 'http://www.tuling123.com/openapi/api' 
 data = { 
  'key': KEY, 
  'info': msg, 
  'userid': 'pth-robot', 
 } 
 try: 
  r = requests.post(apiUrl, data=data).json() 
  return r.get('text') 
 except: 
  return 
 
# 注册方法 
@itchat.msg_register(itchat.content.TEXT) 
def tuling_reply(msg): 
 # 为了保证在图灵Key出现问题的时候仍旧可以回复,这里设置一个默认回复 
 defaultReply = 'I received: ' + msg['Text'] 
 # 如果图灵Key出现问题,那么reply将会是None 
 reply = get_response(msg['Text']) 
 # a or b的意思是,如果a有内容,那么返回a,否则返回b 
 return reply or defaultReply 
 
 
# 为了让修改程序不用多次扫码,使用热启动 
itchat.auto_login(hotReload=True) 
itchat.run()

以上两端代码使用其中一段即可,近期使用,确认可用

代码运行后,会弹出一个二维码界面,扫描并等待一段时间后即可。

此时,自己运营的公众号就会具有智能回复功能,在后台对公众号直接发信息即可,他就会智能回复了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实例分享:快速查找出被挂马的文件
Jun 08 Python
在Linux系统上通过uWSGI配置Nginx+Python环境的教程
Dec 25 Python
Python编程之黑板上排列组合,你舍得解开吗
Oct 30 Python
pytorch cnn 识别手写的字实现自建图片数据
May 20 Python
解决python通过cx_Oracle模块连接Oracle乱码的问题
Oct 18 Python
Python 中 function(#) (X)格式 和 (#)在Python3.*中的注意事项
Nov 30 Python
Pyinstaller 打包exe教程及问题解决
Aug 16 Python
python使用 request 发送表单数据操作示例
Sep 25 Python
Python如何基于rsa模块实现非对称加密与解密
Jan 03 Python
pytorch-RNN进行回归曲线预测方式
Jan 14 Python
TensorFlow绘制loss/accuracy曲线的实例
Jan 21 Python
TensorFlow2.0使用keras训练模型的实现
Feb 20 Python
python读取文本中数据并转化为DataFrame的实例
Apr 10 #Python
python实现百度语音识别api
Apr 10 #Python
Python Selenium Cookie 绕过验证码实现登录示例代码
Apr 10 #Python
浅谈pandas中Dataframe的查询方法([], loc, iloc, at, iat, ix)
Apr 10 #Python
python pandas dataframe 行列选择,切片操作方法
Apr 10 #Python
python3下实现搜狗AI API的代码示例
Apr 10 #Python
Python基于pycrypto实现的AES加密和解密算法示例
Apr 10 #Python
You might like
手把手教你使用DedeCms的采集的图文教程
2007/03/11 PHP
PHP 第二节 数据类型之字符串类型
2012/04/28 PHP
深入php list()函数的详解
2013/06/05 PHP
Thinkphp搜索时首页分页和搜索页保持条件分页的方法
2014/12/05 PHP
yii gridview实现时间段筛选功能
2017/08/15 PHP
TNC vs BOOM BO3 第二场2.13
2021/03/10 DOTA
javascript 面向对象全新理练之原型继承
2009/12/03 Javascript
Exjs 入门篇
2010/04/07 Javascript
基于bootstrap3和jquery的分页插件
2015/07/31 Javascript
JS中使用apply、bind实现为函数或者类传入动态个数的参数
2016/04/26 Javascript
js实现统计字符串中特定字符出现个数的方法
2016/08/02 Javascript
基于jQuery实现顶部导航栏功能
2016/12/27 Javascript
thinkjs之页面跳转同步异步操作
2017/02/05 Javascript
ES6教程之for循环和Map,Set用法分析
2017/04/10 Javascript
详解Vue 普通对象数据更新与 file 对象数据更新
2017/04/26 Javascript
vue页面使用阿里oss上传功能的实例(二)
2017/08/09 Javascript
Vue2.0 http请求以及loading展示实例
2018/03/06 Javascript
vue中设置height:100%无效的问题及解决方法
2018/07/27 Javascript
JavaScript闭包相关知识解析
2019/10/19 Javascript
js实现简单选项卡制作
2020/08/05 Javascript
jenkins自动构建发布vue项目的方法步骤
2021/01/04 Vue.js
浅谈Python的垃圾回收机制
2016/12/17 Python
Python实现k-means算法
2018/02/23 Python
WxPython建立批量录入框窗口
2019/02/27 Python
Pandas透视表(pivot_table)详解
2019/07/22 Python
Django的CVB实例详解
2020/02/10 Python
Django REST 异常处理详解
2020/07/15 Python
英国奢侈品牌时尚购物平台:Farfetch(支持中文)
2020/02/18 全球购物
市场营销专业毕业生求职信
2014/07/21 职场文书
学习作风建设心得体会
2014/10/22 职场文书
幼儿园教师求职信
2015/03/20 职场文书
2015年世界无车日活动总结
2015/03/23 职场文书
2015年行政助理工作总结
2015/04/30 职场文书
大学运动会加油稿
2015/07/22 职场文书
《山中访友》教学反思
2016/02/24 职场文书
MySQL 不等于的三种使用及区别
2021/06/03 MySQL