用Python开发酷Q机器人应用

前言酷Q机器人应用一般都是用易语言开发的,但是一方面不想再多学一门易语言,另一方面开发脚本还是用Python比较舒服。关于Python的酷Q的SDK我在论坛找了一下,目前用的比较多的有两个(现在应该是三个了,见文末),一个是基于http的none-bot,功能更强大,但上手有一定难度,所以最简单的我觉得还是慕晓飞大大的

本站更多关于酷Q的文章:点我

环境配置

首先需要按照文档的说明配置开发环境,这点文档讲的很详细,就不赘述了,需要注意的是:酷Q本身是32位程序,开发时只支持32位的Python。

还有一点就是app_id应该按照官方规范来,否则可能会出问题,

酷Q升级后开发环境的目录移动至酷Q的dev目录下,如果酷Q没有自动更正的话请手动更正。更正方法为,在dev目录下新建cn.muxiaofei.coolq_sdk_x文件夹,将原来的cn.muxiaofei.coolq_sdk_x.dll和cn.muxiaofei.coolq_sdk_x.json重命名为app.dll和app.json移动至新建的文件夹下,其他不变。

配置完环境,如果不出意外的话,应该就能在酷Q日志的DEBUG里看到输出的hello world。

编写程序接下来就是敲自己的代码了,这个SDK的所有事件处理和API调用都在CQPlusHandler.py文件的 MainHandler类中进行编写,关于事件和参数的说明在开发文档中都有说明,API可以通过输入self.api的代码提示进行查看,也可以转到一个_api.py的文件中查看,至于这些API函数和参数的意义基本上看名字就能猜到八九分了,具体使用方法需要自己去尝试。

新手需要注意的是这个CQPlusHandler.py程序是由酷Q软件自动执行的,不需要在Python的IDE里点运行,当然你点了也没用,如果setting里的DEBUG参数你没改的话,只要修改代码并保存,修改的代码就会实时生效。

然后需要说明的就是@和表情,这个需要使用CQ码,

举个例子,在CQPlusHandler.py文件中写入以下代码就能实现在群聊里复读并@发言的人的功能:# -*- coding:utf-8 -*-

import cqplus

class MainHandler(cqplus.CQPlusHandler):

def handle_event(self, event, params):

if event == "on_group_msg":

msg = '[CQ:at,qq=' + str(params['from_qq']) + ']' + params['msg']

self.api.send_group_msg(params['from_group'], msg)

案例然后下面是我根据需求给群友写的一个自助Roll游戏的插件,和论坛上我能找到的抽奖插件相比,这个插件的特点在于完全由qq消息进行命令,可以直接丢到服务器上就不用管了,另一个特点是可以同时进行多个Roll游戏活动而互不干扰,以下是一个使用案例。这个应用其实还有一些功能我想过但还没加进去,以后根据需要有时间再看看吧,我把我写的垃圾代码放在了GitHub上,希望可以给有需要的人一点有价值的参考:

已知问题

打包最后就是应用的打包,直接使用打包生成的cpk文件会报错,需要像开发应用一样配置好环境并把源程序也放进去,唯一的差别就在于可以不用进入酷Q的开发者模式,所以要丢到服务器上的话,还有一丢丢的麻烦。由于Python的SDK的特性,编写的插件就不能像论坛上别的插件一样只发布cpk文件即可,而且使用者还需配置环境,对于普通用户来说过于麻烦了,所以这个还是只适合开发者自己使用。

消息并发处理由于Python的GLI锁机制,本插件不支持并发处理。表现为有事件发生时,比如各种消息和定时器事件,插件便会调用一次CQPlusHandler.py进行事件处理,所以当上一次事件还未处理完时,下一个事件又紧接着发,这时便会发生内存报错。虽然报错了程序并不会崩溃,不过如果程序要处理网络请求一类的耗时任务,这个缺陷是致命的。要想避免这种报错,只在CQPlusHandler.py文件里下功夫(比如用多线程)应该是不行的,估计得从源码上想想办法才行。不过我的机器人不需要处理大量消息,消息处理的也很快,所以凑合用用也还行。

后来有大神重新写了个支持并发的

python开发酷q插件gui_Python酷Q应用开发相关推荐

  1. 如何用python写html的插件,使用python开发vim插件及心得分享

    如何使vim下开发python调试更方便 如何用 Python 给 Vim 写插件 如何使 Vim 下开发 Python 调试更方便 怎么用python调用matlab? 打算用vim写Python ...

  2. python开发酷q插件_基于python和酷Q的QQ机器人开发实践(1)

    基本框架 (1) 酷Q:目前最常用的QQ机器人软件(尤其是在smartQQ失效以后). (2) 酷Q HTTP插件:通过HTTP对酷Q的事件进行上报以及接收HTTP请求来调用酷Q的DLL接口,从而可以 ...

  3. python开发酷q插件gui_基于python和酷Q的QQ机器人开发实践(1)

    基本框架 (1) 酷Q:目前最常用的QQ机器人软件(尤其是在smartQQ失效以后). (2) 酷Q HTTP插件:通过HTTP对酷Q的事件进行上报以及接收HTTP请求来调用酷Q的DLL接口,从而可以 ...

  4. 酷Q插件_SDK———入门与使用

    1.这里使用的是易语言的SDK,所以请看不惯的人自行离开.{wymbf.} 1.2 这里不会直接给你工程,请用动手打代码,动脑思考. 1.3 不知道.不了解酷Q是干嘛的,请访问:https://cqp ...

  5. 酷q插件开发Java_如何使用Java开发QQ机器人 方法一

    使用Java开发QQ机器人- CQ & HTTP API 使用库Q平台下的CQ HTTP API插件以及simple-robot核心标准库作为依赖. 此插件与框架的 简陋 简单介绍:文档处简介 ...

  6. 帮助你高效开发Ajax应用的超酷jQuery插件 - AjaxML

    日期:2012-4-20  来源:GBin1.com 如果你使用jQuery进行Ajax开发的话,你一定要试试今天我们这里介绍的这一款jQuery插件 - AjaxML.它是一款能够帮助你提高ajax ...

  7. 我用 Python 写了一款炫酷音乐播放器,想听啥随便搜!

    作者:Dragon少年 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/hhladminh ...

  8. IntelliJ IDEA(五) :酷炫插件系列

    最近项目比较忙,很久没有更新IDEA系列了,今天介绍一下IDEA的一些炫酷的插件,IDEA强大的插件库,不仅能给我们带来一些开发的便捷,还能体现我们的与众不同. 1.插件的安装 打开setting文件 ...

  9. IDEA的一些炫酷的插件

    最近项目比较忙,很久没有更新IDEA系列了,今天介绍一下IDEA的一些炫酷的插件,IDEA强大的插件库,不仅能给我们带来一些开发的便捷,还能体现我们的与众不同. 打开setting文件选择Plugin ...

  10. unity vr 粒子系统_Unity粒子系统插件,酷炫特效唾手可得

    原标题:Unity粒子系统插件,酷炫特效唾手可得 随着全球使用Unity进行游戏或VR/AR开发的开发者越来越多,Asset Store资源商店也不断为大家提供着越来越丰富的资源.今天我们就为大家分享 ...

最新文章

  1. 存储过程和存储函数初步
  2. Ubuntu16.04LTS安装集成开发工具IDE: CodeBlocks 和Eclipse-cdt
  3. Python用urlib爬虫基础及格式入门
  4. oracle pipelined返回值函数 针对数据汇总统计 返回结果集方法
  5. 班级的每日作业和任务目标
  6. (转)淘淘商城系列——在业务逻辑中添加缓存
  7. 测试面试问道MySQL_Mysql精华总结,解决测试人员面试中碰到的一切Mysql问题(二)...
  8. android人物移动设计软件,实现在SurfaceView上移动游戏人物
  9. 95年计算机专业的电脑,1995年Windows 95系统正式发行,开创互联网新时代
  10. 计算机子网掩码作用,子网掩码计算器有什么用,有哪些优势
  11. linux检测不到声卡设备,解决 Deepin V20、Ubuntu 20.04、Linux Mint 20 声卡无法识别导致的没有声音...
  12. 细胞自动机_细胞自动机和音乐
  13. 2:STM32CubeMX配置STM32F103C8T6驱动-TIM1配置
  14. 物流快递发货单接口API代码-快递100API
  15. 播放视频无声音,视频编码来解决
  16. Vue-vue-cli的安装
  17. 中科蓝汛------DUT模式的使用与五击检测
  18. 【职场 菜鸟→老鸟】你应该知道的一些规则
  19. LS-DYNA模拟炸药在无限空域中的爆炸
  20. matlab 植物生长算法,基于模拟植物生长的BP神经网络学习算法研究

热门文章

  1. Officescan 常用的端口
  2. 软考程序员-C专题(1)
  3. 聚来宝获商务部《媒体购物国家标准》制订单位 【2012-12-22 17:04:20】【来源:京华网】【字体:大 中 小】【颜色:红 绿 蓝 黑】【分享新闻】
  4. 免费下载百度文库需下载券文件
  5. 需求与商业模式分析-2-商业模式类型
  6. 计算机教学的弊端,信息技术在教学中的利弊及解决对策
  7. 屏幕画线软件ZOOMIT
  8. Hyperion神器之SmartView产品(中篇)
  9. cs231n作业——softmax
  10. 2021MathorCup高校数学建模挑战赛——大数据竞赛的一些想法总结