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 相关文章推荐
pycharm下查看python的变量类型和变量内容的方法
Jun 26 Python
windows下搭建python scrapy爬虫框架步骤
Dec 23 Python
python3编写ThinkPHP命令执行Getshell的方法
Feb 26 Python
详细介绍Python进度条tqdm的使用
Jul 31 Python
python多任务之协程的使用详解
Aug 26 Python
Python操作qml对象过程详解
Sep 26 Python
python 有效的括号的实现代码示例
Nov 11 Python
python求质数列表的例子
Nov 24 Python
Python内置方法实现字符串的秘钥加解密(推荐)
Dec 09 Python
python ffmpeg任意提取视频帧的方法
Feb 21 Python
刚学完怎么用Python实现定时任务,转头就跑去撩妹!
Jun 05 Python
Python面向对象之成员相关知识总结
Jun 24 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
《心理测量者3》剧场版动画预告
2020/03/02 日漫
便携利器 — TECSUN PL-365简评
2021/03/02 无线电
一步一步学习PHP(1) php开发环境配置
2010/02/15 PHP
PHP Array交叉表实现代码
2010/08/05 PHP
PHP的SQL注入过程分析
2012/01/06 PHP
php echo, print, print_r, sprintf, var_dump, var_expor的使用区别
2013/06/20 PHP
PHP根据两点间的经纬度计算距离
2014/10/31 PHP
PHP 数组遍历foreach语法结构及实例
2016/06/13 PHP
php引用和拷贝的区别知识点总结
2019/09/23 PHP
jquery text,radio,checkbox,select操作实现代码
2009/07/09 Javascript
超级24小时弹窗代码 24小时退出弹窗代码 100%弹窗代码(IE only)
2010/06/11 Javascript
jQuery中append、insertBefore、after与insertAfter的简单用法与注意事项
2020/04/04 Javascript
js实现倒计时(距离结束还有)示例代码
2013/07/24 Javascript
图片上传判断及预览脚本的效果实例
2013/08/07 Javascript
阻止事件(取消浏览器对事件的默认行为并阻止其传播)
2013/11/03 Javascript
jQuery Validation PlugIn的使用方法详解
2015/12/18 Javascript
jquery实现具有嵌套功能的选项卡
2016/02/12 Javascript
BootStrap和jQuery相结合实现可编辑表格
2016/04/21 Javascript
JS关闭窗口时产生的事件及用法示例
2016/08/20 Javascript
js实现拖拽元素选择和删除
2020/08/25 Javascript
vue+flask实现视频合成功能(拖拽上传)
2021/03/04 Vue.js
[01:02:02]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第二局
2016/02/25 DOTA
Python subprocess模块学习总结
2014/03/13 Python
Python远程桌面协议RDPY安装使用介绍
2015/04/15 Python
Python字符串处理之count()方法的使用
2015/05/18 Python
python用opencv 图像傅里叶变换
2021/01/04 Python
纯CSS3实现圆角效果(含IE兼容解决方法)
2014/05/07 HTML / CSS
加拿大最大的体育用品、鞋类和服装零售商:Sport Chek
2018/11/29 全球购物
绘画设计学生的个人自我评价
2013/09/20 职场文书
手术室护士自我鉴定
2013/10/14 职场文书
电信营业员自我评价分享
2014/01/17 职场文书
个人批评与自我批评材料
2014/10/17 职场文书
中小学生安全教育观后感
2015/06/17 职场文书
小学主题班会教案
2015/08/17 职场文书
MySql存储过程之逻辑判断和条件控制
2021/05/26 MySQL
React四级菜单的实现
2022/04/08 Javascript