Skip to content

ChenXu233/nonebot_plugin_dialectlist

Repository files navigation

NoneBotPluginLogo

NoneBotPluginText

📃话痨排行榜

nonebot-plugin-dialectlist

pypi python QQ Chat Group

>💬看看群友们这些天在群里水了多少话💬<

💿 安装

通过pipnb安装:

  • 通过 pip 安装
pip install nonebot-plugin-dialectlist
  • 通过 nb-cli 安装
nb plugin install nonebot-plugin-dialectlist

✅ 插件依赖于

  1. nonebot-plugin-datastore ————本地化储存
  2. nonebot-plugin-userinfo ————获取用户信息
  3. nonebot-plugin-apscheduler ————定时发送排行榜信息
  4. nonebot-plugin-alconna ————实现命令解析
  5. nonebot-plugin-chatrecorder ————实现消息储存
  6. nonebot-plugin-cesaa ————实现多平台

⚠注意 若先前没有安装过nonebot-plugin-chatrecorder或者nonebot-plugin-orm,则会在启动时报错,请按报错的提示安装数据库!

⚙ 配置

需要提前配置本插件所依赖的插件

在 .env 中,可以添加以下配置项

dialectlist__get_num: int = 5  # 获取人数数量
dialectlist__font: str = "SimHei"  # 字体格式
dialectlist__suffix: bool = True  # 是否显示后缀
dialectlist__excluded_self: bool = True  # 是否排除自己
dialectlist__visualization: bool = True  # 是否可视化
dialectlist__show_text_rank: bool = True  # 是否显示文本排名
dialectlist__counting_cache: bool = False  # 计数缓存(能够提高回复速度)
dialectlist__excluded_people: List[str] = []  # 排除的人的QQ号
dialectlist__use_user_info_cache: bool = False  # 是否使用用户信息缓存
dialectlist__aggregate_transmission: bool = False  # 是否聚合转发消息
dialectlist__timezone: Optional[str] = "Asia/Shanghai"  # 时区,影响统计时间
dialectlist__string_suffix: str = "统计花费时间:{timecost}秒"  # 消息格式后缀
dialectlist__template_path: str = "./template/rank_template.j2"  # 模板路径
dialectlist__string_format: str = "第{index}名:\n{nickname},{chatdatanum}条消息\n"  # 消息格式

💭也可以不进行配置,这将会使插件按照默认配置运行

⚠ 注意!!

在旧版插件(2.0.0 以下)中,dialectlist 与后面的配置项只隔了一个下划线,若更新到新版本以后需要俩个下划线。

🗨命令

!!注意!! 新版本指令调用方式改变,改为更易理解也更好打的 B 话榜。 同时也可以用类似 /今日废话榜 的方式(只要改前面的就好了)(算是给 盘古之白 风格爱好者的福利吧?)

🎨一般用法

B话榜

-/B话榜 ————看看有史以来(机器人存在以来)群友们发了多少消息! (好像没写)

-/今日B话榜 ————看看今天的群友发了多少消息!

-/昨日B话榜 ————看看昨天的群友发了多少消息!

-/前日B话榜 ————看看前天的群友发了多少消息!

-/本周B话榜 ————看看本周的群友发了多少消息!

-/上周B话榜 ————看看上周的群友发了多少消息!

-/本月B话榜 ————看看这个月的群友发了多少消息!

-/年度B话榜 ————看看今年的群友发了多少消息!

-/历史B话榜 ————看看历史上(机器人存在以来)的群友发了多少消息!

看看B话(kkb)

-/看看B话 [@某人|QQ号] ————看看这个b人在这个b群发了多少b话!

🚀进阶用法

B话榜

/{时间类型(今日|年度)?}{B话榜|废话榜} {时间类型?} {ISO8601 格式时间 ?} {群号} {关键词}

如:/B话榜 历史 2024-01-01~2024-01-02 12345678 女装

也可以 /{时间类型(今日|年度)?}{B话榜|废话榜} {时间类型?} {ISO8601 格式时间 ?} -g {群号} -k {关键词}

以下调用方法均合法:

/今日B话榜 -g 12345678 -k 女装 /昨日B话榜 -k 女装 /本周B话榜 -g 12345678

看看B话

/看看B话 {@|QQ号} {群号?} {关键词?}

以下调用方法均合法:

/kkb 114514 1919810 ♂ /kkb @man -k ♂

Important

关键词支持正则表达式!

💪 目前支持的平台

平台 是否经过测试 是否能够正常工作 测试环境
Onebot NapCat + Window11
飞书 🤔
Red 🤔
DoDo 🤔
Mirai 🤔
开黑啦 🤔
Kritor 🤔
Ntchat 🤔
Satori 🤔
Telegram 🤔
Discord 🤔
Tailchat 🤔
QQ 官方接口 🤔
Rocket.Chat 🤔
  • 如果你测试过能够使用,请在 Issue 中指出

📦另外

😳加入作者的 BUG 反馈群 (🥵女装粉丝群)

群连接

群二维码 点我展开

7a4bd22dea47d25d9b632d4b2696d4cd

9c149e99ca747c13892be3f9fbeedf31

💕感谢

本插件的__init__.py 中的处理函数参考了词云中的方法 (其实大部分都是 Ctrl+C Ctr+V)

nonebot-plugin-wordcloud

感谢以下开发者作出的贡献:

🎀TODO

  • 适配全平台

  • 更好看的图片渲染

  • 添加一些全新的可配置项

  • 尝试利用 jinja2 模板引擎制作可视化图片

  • 私聊的查询(超级用户可以任意查询群聊的信息)一半完成

  • 特殊的储存方案优化消息统计

  • 查询带某关键词的消息量

  • 合并转发

待补充。.....

📖版本日志

点我展开

V1.0

  • 看看群里群友能有多话痨

V1.1

  • 支持频道咯!(^_^)

V1.2

  • 排行榜可视化

V1.3

  • 添加了一些可配置项

V1.4

  • 适配新版本的 chatrecorder, 暂时停止频道支持

V2.0

  • 理论支持全平台!暂停图片支持。

V2.1

  • 恢复图片支持。

V2.2

  • 优化代码,添加一些新的可配置项。

V2.4

  • 添加一些新的可配置项。

👾题外话

整个项目快被我写成屎山了