该QQ机器人使用go-cqhttp和nonebot框架。利用改框架,可以实现破解闪照并转发到指定qq号的功能原理qq的特殊消息都可以表示为CQ码(纪念原来的酷Q),CQ码文档可以参考go-cqhttp文档。我们需要的闪照的CQ码是这样的格式:1[CQ:image,type=flash,file=xxxx.image]去掉type=flash,即可表示为正常的图片。所以反闪照插件的功能思路就是:利用正则表达式:\[CQ:image,type=flash,file=.*?\]捕获Bot接收到的所有闪照CQ码解析出发送者,所在群号以及CQ码的全部信息将CQ码中的type=flash,去掉,再私聊转发给预设的qq号即可NoneBot2中提供了on_regex装饰器,可以直接正则监视所有满足条件的消息,而NoneBot1并未提供类似on_regex的正则匹配装饰器,所以需要用on_message监听所有消息,再对消息进行正则过滤。为了减少计算压力,只监听群聊中的消息即可。源码12345678910111213141516171819202122importrefromnonebotimportget_bottarget_user =765892480pattens = re.compile(r"\[CQ:image,type=flash,file=.*?\]")bot = get_bot()
...
继续阅读
(52)