我的编程空间,编程开发者的网络收藏夹
学习永远不晚

ItChat与图灵机器人的结合

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

ItChat与图灵机器人的结合

  • 前景:

我在知乎关注一位大佬 名字叫 LittleCoder

 

我是在他开发ItChat包时关注的

 

ItChat已经完成了微信的个人账号的API接口

已经实现了实时获取用户的即时信息并自动化进行回应

 

后来又看到了国内的人工智能机器人团队TURING ROBOT研发的智能机器人

并提供了给开发者的详尽的API调用文档

既是说

个人账号可以通过ItChat获取即时消息 并实时通过图灵机器人的API得到反馈发送出去

再简单点就是说 使用这两者 构建了一个微信端的智能机器人

 

  • 环境搭建

  0.首先需要一个个人的微信号、有网的电脑、手机

  1.下载安装Python

    这里推荐一个发行版的Python 并且全平台支持

    下载地址:https://www.anaconda.com/download

    截至目前 该发行版已经支持了Python3.7 同时也提供2.7版本

    在终端中输入 python 查看当前python是否安装成功 有图下反馈 即是成功安装(版本号无所谓)

    

 

    2.下载安装pip

    pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能

    在终端中输入如下命令来判断是否有安装pip 

    若有安装 则会反馈版本号

    

pip --version

    若没有安装 则运行如下命令

$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py   # 下载安装脚本
$ sudo python get-pip.py    # 运行安装脚本

    

    3.下载安装ItChat

pip install itchat

    若pip与Python安装没有错误 itchat应该很顺利的就下载安装完毕了

 

    4.获取图灵机器人

    在图灵机器人官网 http://www.tuling123.com 注册账号

    

 

     随便填写就好了

 

    在如下界面 得到每一个机器人的专属Key 类似于机器人的身份证

    如图:
    

    在人物设置中 根据个人情况设置机器人的属性

 

  • 配置机器人

    在图灵机器人的接入API文档中得到相关信息

    https://www.kancloud.cn/turing/www-tuling123-com/718227

    通过分析 得到他的使用方法:

    首先向API发送你的三个信息:你的机器人KEY、向机器人发送的信息、用户标识。

    将这三个信息打包成一个Post请求发送

    就可以得到机器人的回复

 

    测试代码:

    text1.py

    

from importlib import reload
import sys
reload(sys)

import requests
import itchat
 

apiUrl = 'http://www.tuling123.com/openapi/api'
data = {
    'key'    : 'key请手动替换', 
    'info'   : 'hello',          # 这是我们发出去的消息
    'userid' : 'wechat-robot',      # 这里你想改什么都可以
}
# 我们通过如下命令发送一个post请求
r = requests.post(apiUrl, data=data).json()

# 让我们打印一下返回的值,看一下我们拿到了什么
print(r)

    

    在idle中运行:
    

    我们向机器人机器人发送了 hello

    机器人向我们回复了 你好

    证明我们成功实现了与机器人的交流

    下一步 只需要从微信读取与发送数据就行了

 

    优化部分内容

    text2.py

 1 # coding=utf8
 2 import requests
 3 import itchat
 4 
 5 KEY = '填写你的key'
 6 
 7 
 8 # 请求图灵机器人并得到返回消息
 9 def get_response(msg):
10     apiUrl = 'http://www.tuling123.com/openapi/api'
11 
12     data = {
13         'key': KEY,
14         'info': msg,
15         'userid': 'Joeric07'
16     }
17 
18     try:
19         r = requests.post(apiUrl, data=data).json()
20         return r.get('text')
21     except:
22         return

    提供了一个外部接口 用户输入的信息保存为msg 一次请求将key、msg、id一同发送 得到文本回复

 

  • 配置微信接口

    微信有一个文件助手 用来给自己收发文件 也可以输入文字

    尝试1:我们尝试使用python来登陆自己的微信 并通过itchat来给自己的文件助手发送一条信息

    text1_send_to_filehelper.py

import itchat

itchat.auto_login()

itchat.send('Hello, filehelper', toUserName='filehelper')

    第二行代码执行时 会生成一个二维码 使用手机登录微信扫描二维码 即可登录

    文件助手的id是 filehelper

    运行后 可以在手机查看到 自己已经给文件助手发送了一条消息"Hello,filehelper"

 

    尝试2:在微信中回复收到的消息

    text2_relpy_msg.py

import itchat

@itchat.msg_register(itchat.content.TEXT)
def text_reply(msg):
    return msg.text

itchat.auto_login()
itchat.run()

    以上代码将登录者的微信收到的私聊消息原封不动的返回发送回去

    使用修饰器将text_reply(msg)作为参数给itchat.msg_register(itchat.content.TEXT)

    即相当于itchat.msg_register(itchat.content.TEXT(text_reply(msg)))

 

    尝试3:在微信群聊中回复被@的信息

    text3_reply_@msg.py

import itchat

@itchat.msg_register(itchat.content.TEXT, isGroupChat=True)
def text_reply(msg):
if msg['isAt']:
reply = msg['Text']
itchat.send(u'@%s\u2005 %s' % (msg['ActualNickName'], reply), msg['FromUserName'])

itchat.auto_login()
itchat.run()

    以上代码将在微信群聊中 当检测到登录者被@ 且@后有信息时 返回信息

    返回信息为 @发送者 信息

    信息为发送者@登录者后的信息

 

  • 结合
 1 # coding=utf8
 2 import requests
 3 import itchat
 4 
 5 KEY = '在此填入key'
 6 
 7 
 8 # 请求图灵机器人并得到返回消息
 9 def get_response(msg):
10     apiUrl = 'http://www.tuling123.com/openapi/api'
11 
12     data = {
13         'key': KEY,
14         'info': msg,
15         'userid': 'Joeric07'
16     }
17 
18     try:
19         r = requests.post(apiUrl, data=data).json()
20         return r.get('text')
21     except:
22         return
23 # 微信私聊回复
24 @itchat.msg_register(itchat.content.TEXT)
25 def tuling_reply(msg):
26     default_reply = 'I received: ' + msg['Text']
27     #调用图灵机器人
28     reply = get_response(msg['Text'])
29     return reply or default_reply
30 
31 # 微信群聊回复
32 @itchat.msg_register(itchat.content.TEXT, isGroupChat=True)
33 def text_reply(msg):
34     if msg['isAt']:
35         # 调用机器人
36         reply = get_response(msg['Text'])
37         itchat.send(u'@%s\u2005: %s' % (msg['ActualNickName'], reply), msg['FromUserName'])
38 
39 itchat.auto_login(hotReload=True)
40 itchat.run()    

    

    ok好了能跑了 而且响应速度还挺快 基本上秒回了

    不过现阶段的缺点是 不支持表情 emoj表情会被解读成无法识别的字典形式的英文

    itchat可以自动根据文件类别做出回复 应该可以本地建立一个万金油式的表情包库

    在遇到无法解读的情况时 随机发送一个即可

    

 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

ItChat与图灵机器人的结合

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

ItChat与图灵机器人的结合

前景:我在知乎关注一位大佬 名字叫 LittleCoder 我是在他开发ItChat包时关注的 ItChat已经完成了微信的个人账号的API接口已经实现了实时获取用户的即时信息并自动化进行回应 后来又看到了国内的人工智能机器人团队TURIN
2023-01-30

Hadoop与机器学习的结合

Hadoop与机器学习的结合,可以帮助企业更好地利用大数据进行分析和预测,从而提高业务决策的准确性和效率。Hadoop分布式计算框架,能够处理大规模数据的存储和处理,为机器学习算法提供了强大的支持。在Hadoop中,可以利用MapRedu
Hadoop与机器学习的结合
2024-02-29

RiSearch PHP 与人脸识别的结合实现图像搜索

随着人工智能技术的不断发展和成熟,人脸识别技术已经广泛应用于各个领域。在图像搜索方面,结合人脸识别可以使搜索更加准确和高效。本文将介绍如何使用RiSearch PHP和人脸识别技术来实现图像搜索,并提供具体的代码示例。一、RiSearch
2023-10-21

Python小项目:利用tkinter与图灵机器人制作智能聊天系统

下面是一个使用tkinter和图灵机器人API制作的简单智能聊天系统的Python小项目。首先,确保你已经安装了`tkinter`和`requests`模块。```pythonimport tkinter as tkimport reque
2023-10-11

ChatGPT和Python的结合:构建智能问答聊天机器人

ChatGPT和Python的结合:构建智能问答聊天机器人引言:随着人工智能技术的不断发展,聊天机器人已经成为人们日常生活中不可或缺的一部分。ChatGPT是由OpenAI开发的一种先进的自然语言处理模型,它可以生成流畅、具有上下文的文本响
2023-10-26

ChatGPT和Python的结合:构建智能推荐聊天机器人

ChatGPT和Python的结合:构建智能推荐聊天机器人摘要:自然语言处理技术和人工智能的快速发展使得聊天机器人成为了现实。本文将介绍如何使用OpenAI的ChatGPT模型和Python编程语言构建一个智能推荐聊天机器人。我们将探讨使用
2023-10-26

ChatGPT和Python的完美结合:打造实时聊天机器人

ChatGPT和Python的完美结合:打造实时聊天机器人导言:随着人工智能技术的快速发展,聊天机器人在各个领域中扮演着越来越重要的角色。聊天机器人可以帮助用户提供即时且个性化的帮助,同时也可以为企业提供高效的客户服务。本文将介绍如何使用O
ChatGPT和Python的完美结合:打造实时聊天机器人
2023-10-28

MongoDB与机器学习的结合实践与模型持久化

随着大数据和人工智能的发展,机器学习技术在不断地发展和应用,而数据存储和管理也成为了关键的一环。MongoDB作为一种NoSQL数据库,具有高可扩展性、高性能、灵活数据模型等特性,并且与机器学习的结合也具有很好的优势。本文将介绍MongoD
MongoDB与机器学习的结合实践与模型持久化
2023-11-02

ChatGPT和Python的完美结合:打造多领域聊天机器人

ChatGPT和Python的完美结合:打造多领域聊天机器人引言:随着人工智能技术的快速发展,聊天机器人已经成为了现今社交媒体和客户服务领域中的重要工具。聊天机器人能够通过自然语言处理和机器学习技术,与用户进行自动化的对话,提供信息和解决问
2023-10-25

ChatGPT和Python的完美结合:打造智能客服聊天机器人

ChatGPT和Python的完美结合:打造智能客服聊天机器人引言:在当今信息时代,智能客服系统已经成为企业与客户之间重要的沟通工具。而为了提供更好的客户服务体验,许多企业开始转向采用聊天机器人的方式来完成客户咨询、问题解答等任务。在这篇文
2023-10-27

人工智能为什么认知系统应该将机器学习与语义技术相结合

编程学习网:假设您要构建一个有助于识别葡萄酒和奶酪搭配的应用程序。谁会表现最好?仅基于机器学习的应用程序,仅基于专家知识的应用程序,还是两者结合使用?
人工智能为什么认知系统应该将机器学习与语义技术相结合
2024-04-23

操作系统容器编排与微服务架构:如何实现完美结合,让你的应用程序更加灵活

本文将深入探讨操作系统容器编排与微服务架构的完美结合,并通过演示代码,详细介绍如何在实际应用中实施,从而让应用程序更加灵活、高效。
操作系统容器编排与微服务架构:如何实现完美结合,让你的应用程序更加灵活
2024-02-11

Solr搜索与机器学习算法的结合应用(如何利用机器学习算法提升Solr搜索的效果?)

Solr搜索与机器学习算法的结合可以显著提升搜索效果,提供更相关和个性化的体验。利用机器学习,我们可以实现相关性排序、搜索推荐、个性化搜索、拼写纠正和查询分析。相关性排序基于规则或机器学习模型,根据文档与查询的相关性进行排序。搜索推荐使用协同过滤、内容相似性或用户偏好预测来推荐相关文档。个性化搜索基于用户画像,定制搜索结果。拼写纠正利用字典和模糊匹配算法纠正拼写错误。查询分析和自动补全通过分词、词形还原和自动补全优化查询。通过选择合适算法、进行数据预处理、持续优化,我们可以取得最佳搜索效果。阿里巴巴、Ne
Solr搜索与机器学习算法的结合应用(如何利用机器学习算法提升Solr搜索的效果?)
2024-04-02

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录