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)