linuxzxy

1.安装所需要的python模块--wxpy

安装方式1

从 PYPI 官方源下载安装 (在国内使用可能比较慢或不稳定):

1 pip3 install -U wxpy

安装方式2 

从豆瓣 PYPI 镜像源下载安装 (建议国内用户使用):

1 pip3 install -U wxpy -i "https://pypi.doubanio.com/simple/"

2.导入所需要的模块

1 import wxpy
2 import requests
3 import json

3.初始化——扫描二维码登陆

1 bot = wxpy.Bot()

若未出现二维码请安装模块:PyQRCode

1 pip install PyQRCode

 4.  消息回复函数

 1 @bot.register()
 2 def reply_my_friend(msg):
 3     if msg.member == None:
 4         if msg.type == \'Text\':
 5             m = \'{}\'.format(msg.text)
 6             replys = talks_robot(info=m)
 7             return replys
 8     elif msg.is_at == True:
 9         m = \'{}\'.format(msg.text)
10         replys = talks_robot(info=m)
11         return replys

       此函数对发送的消息进行了判断,对群聊进行了屏蔽,只对好友的私聊以及群聊天中@自己的消息进行回复, 以免开启时在群聊里误事。

上面消息回复中用到了talks_robot(),这个函数主要调用了图灵机器人的接口,也是这个聊天机器人的关键所在。

 1 def talks_robot(info=\'你好啊\'):
 2     api_url = \'http://www.tuling123.com/openapi/api\'
 3     apikey = \'*****************************\'
 4     data = {\'key\':apikey,\'info\':info}
 5     req = requests.post(api_url,data).text
 6     n = 0
 7     replys = \'\'
 8     print(info)
 9     if \'今日新闻\' in info:
10         re_data = json.loads(req)[\'list\']
11         for x in re_data:
12             n = n+1
13             replys = (replys+str(n)+\':\'+x[\'article\']+\'\n\'+x[\'detailurl\']+\'\n\')
14     else:
15         replys = json.loads(req)[\'text\']
16     return replys

此函数中的apikey为自己在图灵机器人上搭建的机器人的key。

我也对不同的消息进行了判断,普通的聊天消息则直接传给接口处理,若消息中包含今日新闻,则会返回今日新浪网上的25条新闻,处理组合后自动回复。

5.让程序持续运行。

1 wxpy.embed()

堵塞线程,进入python命令行。

6.后期改进

加入好友请求自动处理和建群功能。

7.效果展示

说真的,这个机器人太会撩人了,,,不得不服。

分类:

技术点:

相关文章: