Python 学习之路

如何实现简单的微信机器人

2017-03-12  本文已影响3296人  简讯Alfred

最近发现了一个有趣的项目,利用Python制作一个简单的微信机器人。思路就是微信获取到信息,然后接入图灵机器人的API,再把信息发送给对方。听起来很有意思,实践一下吧!查看原文

介绍

itchat

既然要在Python中接入微信,一定少不了和微信有关的库:itchat

itchat是一个开源的微信个人号接口,使用python调用微信从未如此简单。使用不到三十行的代码,你就可以完成一个能够处理所有信息的微信机器人。有了这个库我们就可以完成一系列的操作了。详细介绍点这里

使用pip install itchat安装。

图灵机器人

图灵机器人是中文语境下智能度最高的机器人大脑,已为超过23万家企业和开发者提供服务,广泛应用于机器人、智能家居、智能车载、智能客服、可穿戴设备等众多场景。图灵机器人官方网站

项目

微信

有了itchat,如果你想要给文件传输助手发一条信息,只需要这样:

import itchat

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

注意toUserName是微信ID,不是昵称或备注。

再放一段简单的代码感受一下。

import itchat

@itchat.msg_register(itchat.content.TEXT)
def textReply(msg):
    if msg['Type'] == itchat.content.TEXT:
        return  'I received: %s' %msg['Text']

itchat.auto_login()
itchat.run()

运行后会弹出一个二维码,扫描以后会使用网页版微信登录。如果这时有人和你聊天就会自动回复:“I received:(信息)”。这只是一个简单的示范,可以看一下itchat的介绍,其他方法的代码也很简单。

图灵API

登录图灵机器人官方网站http://www.tuling123.com/,点击右上角“注册”按钮进行注册并激活帐号,如下图所示:

每一个激活用户都可以通过图灵机器人开放平台获取多个APIKEY(当前每个用户可最多获取5个APIKEY),用户可以根据自己的需要获取不同的图灵APIKEY来应用于多种场景,获取成功后就等于拿到了开启图灵服务的钥匙。

接口地址:http://www.tuling123.com/openapi/api

请求方式为POST,请求参数格式为json。图灵机器人API介绍

登录以后设置好自己的机器人,然后使用下边的代码:

#coding=utf-8
import itchat
from itchat.content import *
import json
import requests

@itchat.msg_register([TEXT])
def textReply(msg):
    info = msg['Text'].encode("utf-8")
    print(info)
    url = "http://www.tuling123.com/openapi/api"
    data = {
        "key":"d6cb72***********9b49ed45cb3",
        "info":info,
        "loc":"",
        "userid":""
    }
    apicon=requests.post(url,data).text
    s=json.loads(apicon,encoding="utf-8")
    print("图灵回复",s)
    itchat.send(s['text'],msg['FromUserName'])
    
itchat.auto_login(True)
itchat.run()

这段代码可以理解为获取到微信信息然后转到图灵机器人API,解析数据以后再回复消息。这样就可以代替你和别人聊天了,而且这个机器人还有很多丰富的功能。

目前已知的问题:在我问他关于车次,或者只要涉及到URL的时候,就收不到消息,即使在消息回复中加入了s['url']也不能正确获取信息。

上一篇下一篇

猜你喜欢

热点阅读