酷Q机器人+vps+python实现功能强大的QQ机器人

QQ/微信机器人 6年前 (2018-09-29) 17658次浏览 2个评论

————-2020 年 4 月 17 日更新————–

1 由于本文中的 python sdk 已经停止维护且失效了,重新写了一篇 python 开发 qq 机器人的教程,参考:[教程/源码] 酷 q+nonebot+python+vps,定制你的专属 qq 机器人

2 本文中关于酷 q 的功能介绍、安装、酷 q on docker 部署仍然可以参考

————-2020 年 4 月 17 日更新————–

今天给大家介绍一个关于 QQ 机器人的玩法,就是通过酷 Q+python+vps 实现功能强大、稳定运行和实现简单的 QQ 辅助工具。qq 机器人的功能很丰富,自定义程度极高,在不同人手里能能玩出各种花样,比如实现自动群管理、客服、精准推广、Q 群小游戏等各种工具。另外酷 Q 官方的 SDK 是易语言版的,支持的功能更加全面,更加高级。了解酷 Q 易语言 SDK,参考[实战及教程]酷 Q+易语言+vps 实现 24 小时不间断监控机器人

QQ 机器人技术路线介绍

总的实现思路是,基于酷 Q 的 python SDK 实现简单的 qq 机器人,再将机器人接入到酷 Q on docker,部署到 linux 服务器,使其可以 24 小时长期在线。下面分别介绍下重要的几个点。

先介绍下酷 Q 机器人,酷 Q 是基于 smartQQ 协议实现的功能丰富完全免费的 QQ 机器人,可以模拟用户自动完成大部分 QQ 功能如自动聊天、群聊、审核加群、踢人、发公告等常用功能。同时支持插件化二次开发,完全根据自己的需求去实现 QQ 机器人的行为方式,因此 qq 机器人的功能基本上没什么限制,脑洞能开多大,功能就有多强。

酷 Q 机器人支持多种编程语言的 SDK 开发包,包括易语言、C、C++、Delphi 、Pascal 、Rust、HTTP API 、Java 、C# 、Python 、VB.NET 等。其中用的最多的是易语言 SDK,最稳定功能最全。我们这次只做简单的示范和介绍,所以用的是 python SDK,功能也很丰富,支持绝大部分常用功能。

另外,酷 Q 机器人一般是安装在 windows 系统上的。但是大家一般都希望 qq 机器人是作为服务 24 小时在线的,所以最好是部署在 Linux 系统的 vps 主机中。酷 Q 也给出了解决方案,就是推出了基于 Docker 和 wine 技术的酷 Q on Docker,支持在任意 x86_64 架构的系统上使用 酷 Q。

基于以上技术路线,就可以搭建属于自己稳定运行的 QQ 机器人 。整个搭建过程也不算复杂,只要稍微有点编程基础的人都可以很快实现。

酷 Q 机器人软件使用

简单来说酷 Q 机器人分为三个版本,分别是酷 Q air酷 Q pro酷 Q on docker

其中酷 Q air 是免费版,适用于 windows,支持绝大部分 QQ 功能;酷 Q pro 是收费版,12 元每月,适用于 windows 系统。除了 QQ 基础功能外还支持很多高级特性,如企业 QQ、点赞、名片分享等;酷 Q on docker 也是免费的,功能与酷 Q air 一致,适用于安装了 docker 环境的 linux/mac os/windows 系统。

先介绍下酷 Q air 的基本使用方法。

先下载酷 Qair 压缩包 ,下载地址:http://dlsec.cqp.me/cqa-tuling。

解压后目录结构如下

酷 Q 机器人+vps+python 实现功能强大的 QQ 机器人

点击 CQA.exe 运行,再通过酷 Q 登录 QQ,就可以与酷 Q 机器人交互了。

安装使用过程很简单,重要的在于对机器人进行自定义开发,不断开发机器人的花式玩法,这也是 QQ 机器人最有趣的地方。

基于 python SDK 的二次开发

我们这里通过 python SDK 做一个简单的翻译机器人,通过这个示范了解 python sdk 的开发流程。

0 先打开酷 Q 调试模式。修改 conf/CQP.cfg ,末尾添加这两行代码:

[Debug]
DeveloperMode=1

1 首先下载 sdk,sdk 地址:https://gitee.com/muxiaofei/cq_python_sdk

2 将文件 cn.muxiaofei.cq_pythonxx_sdk.dll, cn.muxiaofei.cq_pythonxx_sdk.json 以及目录 cn.muxiaofei.cq_pythonxx_sdk 复制到酷 Q 的 app 目录下

3 重启酷 Q,可以在面板中看到 python SDK 的应用。

4 基于 python SDK 的二次开发,主要是修改 cn.muxiaofei.cq_python27_sdk/CQHandler.py 文件。

5 我们主要实现的是 CQHandler 中的 OnEvent_PrivateMsg 接口,该接口是监听机器人收到的私人消息,然后根据后台逻辑回复信息。

6 翻译机器人主要是调用了爱词霸的翻译接口,收到 QQ 好友发来的信息后,调用翻译接口,将译文在反馈给用户,具体代码如下

def OnEvent_PrivateMsg(self, subType, sendTime, fromQQ, msg, font):
    logging.info('OnEvent_PrivateMsg: subType={0}, sendTime={1}, fromQQ={2}, msg={3}, font={4}'.format(subType, sendTime, fromQQ, msg, font))
    try:
        resp = requests.get('http://dict-co.iciba.com/search.php?word='+msg.decode("gbk","ignore"), timeout=20)
        html = resp.text.encode("gb2312","ignore")
        name_obj = re.search( r'<br><br>(.*?)<br /><br />', html, re.S|re.I)
        name = name_obj.group(1).strip().replace('&nbsp;', ' ')
        logging.info(name)
        CQSDK.SendPrivateMsg(fromQQ, name)
    except Exception as e:
        logging.exception(e)

7 代码更新后,点击应用管理->菜单->应用初始化,改动就会生效

效果如下:

酷 Q 机器人+vps+python 实现功能强大的 QQ 机器人

通过酷 Q on docker 将酷 Q 机器人部署到 VPS 主机

如果想要 QQ 机器人长期在线且稳定运行,肯定是要将酷 Q 运行在服务器上的。随着云计算的发展云主机、vps 等远程服务器都很稳定,而且价格也不高。但是 linux 主机的价格要比Windows 主机的价格便宜很多,所以我们选择适应 linux 系统的酷 Q on docker。

酷 Q on docker 部署使用和二次开发教程参考:酷 Q on docker 安装部署、使用及二次开发教程

vps 主机推荐 virmach 家月付 2.5 刀的 kvm 主机,性价比超高,支持支付宝付款,买一年送两个月使用期限,即年付 25 刀

CPU 内存 磁盘 流量 架构 价格 地址
1 核 512M 15G SSD 1TB KVM $2.5/月或$25/年 购买

virmach 商家详细介绍=>virmach 介绍–低价之王,超高性价比

注 :获取 VPS 最新补货通知、优惠码、折扣活动请加 QQ 群:283468775

VPS 精选网 , 版权所有丨如未注明 , 均为原创丨
转载请注明原文链接:酷 Q 机器人+vps+python 实现功能强大的 QQ 机器人
喜欢 (14)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(2)个小伙伴在吐槽
  1. 你好我用Python SDK 开发的cpk 插件,放到docker容器中,一发消息就会报错,请问您有这种情况吗
    任榆2019-07-10 00:44 回复
    • 没遇到过,你可以查一下错误日志
      vps精选网2019-07-16 21:36 回复