博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于 QQBot 实现简易 QQ 机器人
阅读量:4948 次
发布时间:2019-06-11

本文共 1446 字,大约阅读时间需要 4 分钟。

参考来源:https://blog.csdn.net/qq_42156420/article/details/80627783

Windows下,打开 cmd 窗口,

  pip install qqbot

安装完成后,cmd 窗口输入

  qqbot

即启动 QQBot,弹出二维码,用手机QQ扫一下,即授权登录

另外打开一个 cmd 窗口,键入

  qq help

即可看到各项功能,例如

  qq list buddy

即可看到好友列表。

 

设计自动回复内容,需要编写一个“消息响应函数”,例如,写下 QQchatbot.py,内容如下:

 

from qqbot import QQBotSlot as qqbotslot, RunBot

@qqbotslot
def onQQMessage(bot, contact, member, content):
    if content == 'hello':
        bot.SendTo(contact, '你好,我是QQ机器人')
    elif content == '计算物理':
        bot.SendTo(contact, '我是计算物理助教')
    elif content == '爱你哦':
        bot.SendTo(contact, '嗯嗯爱你')
    else:
        bot.SendTo(contact, '哎呀,你在说啥,我听不懂呢')
if __name__ == '__main__':
    RunBot()

关闭正在运行的 QQbot (通过 qq stop),再运行

  python QQchatbot.py -q 你的QQ号

即可登录该 qq 号,它会按照函数 onQQMessage(...) 中的设置,进行自动回复。

 

做成插件:sample.py 放进 C:\Users\xxx\.qqbot-tmp\plugins\,sample.py 内容:

def onQQMessage(bot, contact, member, content):

    if content == 'hello':
        bot.SendTo(contact, '你好,我是QQ机器人')
    elif content == '计算物理':
        bot.SendTo(contact, '我是计算物理助教')
    elif content == '爱你哦':
        bot.SendTo(contact, '嗯嗯爱你')
    else:
        bot.SendTo(contact, '哎呀,你在说啥,我听不懂呢')

 

运行 qqbot -q 你的qq号 (之前扫过二维码,所以短时间内可以自动登录),在另一个 cmd 窗口键入

  qq plug sample

即启动 sample 插件,你的 qq 号开始自动问答。

如果你想关掉插件,只需键入

  qq unplug sample

你的 qq 号就停止自动问答功能。

 

我本来是想做一个自动答疑的 qq 机器人,放在学生群里,回答一些数学物理基本问题。那么需要训练这个机器人,让他根据关键字,给出事先准备好的内容,发到群里。所以接下来我还需要学会:

1. 群聊

2. 根据关键字答复

3. 学习功能

  网上找到这个帖子,好像有学习功能

  https://www.jianshu.com/p/9e18b46bfc65

 

有空了继续学习,再更新这个帖子

转载于:https://www.cnblogs.com/luyi07/p/10156222.html

你可能感兴趣的文章
js对话框弹窗
查看>>
.NET中怎么有效的使用Cache
查看>>
结对学习感想
查看>>
Tomcat源码分析(从启动流程到请求处理)
查看>>
onPullDownRefresh函数没有被正确执行
查看>>
【原创】Activity 概念介绍(大全)
查看>>
从零讲解搭建一个NIO消息服务端
查看>>
VS 插件
查看>>
Chrome 消息传递机制
查看>>
性能测试插件
查看>>
全站缓存时代
查看>>
http://javafound.iteye.com/blog/704141 微博是这样练成的
查看>>
[MPI学习笔记]mpi并行实现方法
查看>>
c++ builder 获取命令行参数
查看>>
Win7系统重启后ip丢失问题问题的解决方法
查看>>
等保2.0所需设备
查看>>
jquery easyui-linkButton获取和设置按钮text并且解决火狐不支持innerText的方法
查看>>
IBM大型主机(Mainframe)技术简介之六——数据库和系统集成(二)
查看>>
【BZOJ5336】[TJOI2018]party(动态规划)
查看>>
【BZOJ4944】[NOI2017]泳池(线性常系数齐次递推,动态规划)
查看>>