阅读 378
教你用Python如何实现微信自动回复功能,机器人自动对话!

教你用Python如何实现微信自动回复功能,机器人自动对话!

托管机器人:用Python写一个机器人,自动回复别人说话

实现过程: 那个几个图上传失败 我也是无语 感兴趣的朋友可以进后面那个链接下载更多Python干货文档视频文档链接 ke.qq.com/course/3978…            1.首先要申请一个可以说话的机器人.机器人网站http://www.tuling123.com

注册一个账号,然后登陆,创建一个机器人:

2.写一段连接机器人的程序.,首先获取机器人的api地址, www.tuling123.com/openapi/api…,

这里需要些一段登陆机器人的代码:# coding = utf8 import requests import itchat # 去图灵机器人官网注册后会生成一个apikey,可在个人中心查看 KEY = 'c220a31ae10d40f19a6cdce74997b3e6' def get_response(msg):

apiUrl = 'www.tuling123.com/openapi/api'    data = {        'key'   : KEY,        'info'   : msg,   # 这是要发送出去的信息        'userid'  : 'wechat-rebot',  #这里随意写点什么都行    }    try:        # 发送一个post请求        r = requests.post(apiUrl, data =data).json()        # 获取文本信息,若没有‘Text’ 值,将返回Nonoe         return r.get('text')    except:        return# 通过定义装饰器加强函数 tuling_reply(msg) 功能,获取注册文本信息

3.获取别人微信发过来的信息,需要一个特殊的加强函数来完成.

通过定义装饰器加强函数 tuling_reply(msg) 功能,获取注册文本信息@itchat.msg_register(itchat.content.TEXT)

4.设置一个回复信息的机制,如果机器人出问题了,也就是不能回复信息了,设置一个默认的回复机制.

def tuling_reply(msg):    # 设置一个默认回复,在出现问题仍能正常回复信息    defaultReply = 'I received: ' +msg['Text']    reply = get_response(msg['Text'])    # a or b 表示,如有a有内容,那么返回a,否则返回b    return reply or defaultReply

5.以上所有的都准备好了,接下来就是要设置微信登陆了,通过生成二维码,微信扫描的方式登陆,开启程序.

使用热启动,不需要多次扫码itchat.auto_login(hotReload=True)itchat.run()

最终代码如下:

coding = utf8

import requests

import itchat

去图灵机器人官网注册后会生成一个apikey,可在个人中心查看

KEY = 'c220a31ae10d40f19a6cdce74997b3e6'

def get_response(msg)

:    # API的地址

apiUrl = 'www.tuling123.com/openapi/api'

data = {

'key'   : KEY,

'info'   : msg,   # 这是要发送出去的信息

'userid'  : 'wechat-rebot',  #这里随意写点什么都行

}

# 获取文本信息,若没有‘Text’ 值,将返回Nonoe

try:

# 发送一个post请求

r = requests.post(apiUrl, data =data).json()

return r.get('text')

except:

return

通过定义装饰器加强函数 tuling_reply(msg) 功能,获取注册文本信息

@itchat.msg_register(itchat.content.TEXT)

def tuling_reply(msg):

# 设置一个默认回复,在出现问题仍能正常回复信息

defaultReply = 'I received: ' +msg['Text']

reply = get_response(msg['Text'])

# a or b 表示,如有a有内容,那么返回a,否则返回b

return reply or defaultReply

使用热启动,不需要多次扫码

itchat.auto_login(hotReload=True)

itchat.run()

想提高技术获取干货的朋友可以加下哦 Python技术交流群733736235

更多Python干货视频链接 ke.qq.com/course/3978…

文章分类
代码人生
文章标签