Python用图灵机器人实现微信自动回复

Python用图灵机器人实现微信自动回复

利用图灵机器人的话首先要到图灵机器人官网注册一个账号

登陆账号后点击头像进行设置,设置完成后点击左边菜单栏里的首页,在里面的“机器人看板”模块可以看到APIkey,这个是我们实现的一个重要部分。
如果不想自己注册的话,在百度也可以找到很多可用的APIkey,我这里用的是找到的一个APIkey :04f44290d4cf462aae8ac563ea7aac16 那么接下来就是我们的代码部分。

我们用Python来实现这次微信自动回复的功能。
我们会用到Python的三个库,requests,itchat,random
这里写图片描述

接下来我们直接贴上代码

# -*- coding=utf-8 -*-

import requests
import itchat
import random

KEY='04f44290d4cf462aae8ac563ea7aac16'

def  get_response(msg):
	#发送给图灵机器人的数据
    apiUrl='http://www.tuling123.com/openapi/api'
    data={
        'key' : KEY,
        'info' : msg,
        'userid' : 'wechat-robot',
    }
    try:
        r=requests.post(apiUrl,data=data).json()
		#向服务器发送请求
        return r.get('text')
		'''
			用try,except的方法来捕获异常
			如果服务器没能正常交互,那么就会执行下面的return
		'''
    except:
        return
	


@itchat.msg_register(itchat.content.TEXT)
#文本信息回复
def tuling_reply(msg):
    defaultReplay='I received: ' + msg['Text']
    robots=['I am Jarvis.May I have a message to Tony?','Hello,I am Jarvis.']
    reply=get_response(msg['Text'])+random.choice(robots)
    #random.choice会从robots中随机选取一个元素,这个可以根据自己喜好来修改
    return reply or defaultReplay
	#reply x or y,如果x有内容就返回x,否则返回y

@itchat.msg_register([itchat.content.PICTURE,itchat.content.RECORDING,itchat.content.VIDEO])
#回复图片/表情,语音,视频
def other_replay(msg):
	defaultReplay='I received: ' + msg['Text']
	robots=['I am Jarvis.May I have a message to Tony?','Hello,I am Jarvis.']
	reply=get_response(msg['Text'])+random.choice(robots)
	return reply or defaultReplay


itchat.auto_login(hotReload=True)
'''不想每次运行程序都扫码,可以设置参数hotReload=True
	如果想在登陆的时候使用命令行显示二维码,可以设置参数enableCmdQR=True
'''
itchat.run()

运行程序然后扫码即可运行

网上还有很多方法,有些比较简便的代码就可以实现了,比如:

@itchat.msg_register(itchat.content.TEXT)
def text_replay(msg):
	if(msg):
	itchat.send_msg(("你的信息已经收到了。"),msg['FromUserName'])
	#可以根据自己的喜好换成自己想回复的话

你可能感兴趣的:(Python用图灵机器人实现微信自动回复)