[qq机器人] nonebot2 群管插件

该博客介绍了如何利用Python的nonebot库创建一个群聊机器人,该机器人能够检测并自动回复含有敏感词的消息,并具备开启/关闭全群禁言的功能。用户可以通过特定命令来控制禁言状态,当检测到敏感词时,会禁言相应用户一段时间作为警告。源码中包含了敏感词列表和禁言时长,可以根据需求进行自定义调整。
摘要由CSDN通过智能技术生成

使用命令:开启/关闭全禁

这里我就不放效果图了,还请各位大佬自行摸索

废话不多说,上源码:

from cgitb import enable
from nonebot import on_keyword, on_regex
from nonebot.typing import T_State
from nonebot.adapters.onebot.v11 import Message, GroupMessageEvent, GroupIncreaseNoticeEvent, GroupDecreaseNoticeEvent,GroupUploadNoticeEvent, GroupAdminNoticeEvent, GroupRecallNoticeEvent, PokeNotifyEvent,Bot,Event
from nonebot import on_notice, on_command
import warnings,requests
from nonebot.permission import *
#from nonebot import 
import re


warnings.filterwarnings("ignore")

# 撤回消息
che = on_keyword({'广告', '沙雕', '广告', 'md', '妈的', '卧槽', '嘛的', '操你妈', '操你', '加vx','操','草','傻逼','SB','sb','nt','脑瘫','骚'})
qtk = on_regex(pattern = r'^开启全禁$')
qtg = on_regex(pattern = r'^关闭全禁$')
zr = 1648576390


@che.handle()
async def c(bot: Bot, event: GroupMessageEvent, state: T_State):
    mid = event.message_id
    group = event.group_id
    qq = event.user_id
    sj = 300
    print(mid)
    print(group)
    await bot.delete_msg(message_id=mid)
    await bot.set_group_ban(group_id=group,user_id=qq,duration=sj)
    await che.finish(message=f'@{qq} 你的发言可能包含敏感词汇,这里禁言5分钟警告一下')

@qtk.handle()
async def j(bot: Bot, event: GroupMessageEvent, state: T_State):
    group = event.group_id
    qq = event.user_id
    if qq == zr:
        await bot.set_group_whole_ban(group_id=group,enable=True)
        await che.finish(message=f'好的大大,辞辞已经为您开启全体禁言了')
    else:
        await che.finish(message=f'你没有资格命令我!')

@qtg.handle()
async def g(bot: Bot, event: GroupMessageEvent, state: T_State):
    group = event.group_id
    qq = event.user_id
    if qq == zr:
        await bot.set_group_whole_ban(group_id=group,enable=False)
        await che.finish(message=f'好的大大,辞辞已经为您关闭全体禁言了')
    else:
        await che.finish(message=f'你没有资格命令我!')
    
    
    


    

    
    

ps:违禁词可以根据自身需要进行修改,禁言时间也可以自行修改,单位是秒,我源码中是300秒,也就是5分钟

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

萌新源

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值