refactor code

This commit is contained in:
hibiki
2021-07-30 21:21:51 +08:00
parent 2ad891aa1e
commit cc24822dca
165 changed files with 7815 additions and 8174 deletions
+12 -11
View File
@@ -3,7 +3,7 @@ from nonebot.adapters.cqhttp import Bot, GroupMessageEvent, PrivateMessageEvent
from nonebot.typing import T_State
from nonebot.rule import to_me
from configs.path_config import DATA_PATH
from utils.init_result import image
from utils.message_builder import image
import os
from .data_source import create_help_img, create_group_help_img, get_plugin_help
from nonebot import require
@@ -12,25 +12,27 @@ from utils.utils import get_message_text
export = require("nonebot_plugin_manager")
__plugin_name__ = '帮助'
__plugin_name__ = "帮助"
if not os.path.exists(DATA_PATH + 'group_help/'):
os.mkdir(DATA_PATH + 'group_help/')
if not os.path.exists(DATA_PATH + "group_help/"):
os.mkdir(DATA_PATH + "group_help/")
create_help_img()
for file in os.listdir(DATA_PATH + 'group_help/'):
os.remove(DATA_PATH + 'group_help/' + file)
for file in os.listdir(DATA_PATH + "group_help/"):
os.remove(DATA_PATH + "group_help/" + file)
_help = on_command("功能", rule=to_me(), aliases={'help', '帮助'}, priority=1, block=True)
_help = on_command("功能", rule=to_me(), aliases={"help", "帮助"}, priority=1, block=True)
@_help.handle()
async def _(bot: Bot, event: GroupMessageEvent, state: T_State):
msg = get_message_text(event.json())
if not msg:
if not os.path.exists(DATA_PATH + f'group_help/{event.group_id}.png'):
if not os.path.exists(DATA_PATH + f"group_help/{event.group_id}.png"):
create_group_help_img(event.group_id)
await _help.finish(image(abspath=DATA_PATH + f'group_help/{event.group_id}.png'))
await _help.finish(
image(abspath=DATA_PATH + f"group_help/{event.group_id}.png")
)
else:
await _help.finish(get_plugin_help(msg))
@@ -39,7 +41,6 @@ async def _(bot: Bot, event: GroupMessageEvent, state: T_State):
async def _(bot: Bot, event: PrivateMessageEvent, state: T_State):
msg = get_message_text(event.json())
if not msg:
await _help.finish(image('help.png'))
await _help.finish(image("help.png"))
else:
await _help.finish(get_plugin_help(msg))
+57 -56
View File
@@ -1,65 +1,66 @@
# 实用
utility_help = {
'update_pic': '一些对图片的操作 --> 指令:操作图片/图片/修改图片(包含 10 种图片操作)',
'search_buff_skin_price': 'BUFF皮肤底价查询 --> 指令:查询皮肤(代理ip不得劲)',
'weather': '天气查询 --> 指令:xx天气',
'yiqing': '实时疫情数据 --> 指令:疫情查询/疫情/查询疫情',
'bt': 'bt(磁力搜索){仅支持私聊,懂的都懂} --> 指令:bt',
'reimu': '老司机必备!{仅支持私聊,懂的都懂}-> 指令:上车',
'what_anime': '靠图识番 --> 指令:识番',
'nonebot_plugin_picsearcher': '以图搜图 --> 指令:识图/这是什么/上一张图是什么',
'search_anime': '找不到想看的动漫吗? --> 指令:搜番',
'songpicker2': '来一首歌听听? --> 指令:点歌',
'epic': 'epic速速白嫖 --> 指令:epic',
'pixiv_r': 'P站排行榜直接冲 --> 指令:p站排行(可含参数)',
'pixiv_s': 'P站的图随便搜搜 --> 指令:搜图(可含参数)',
'pid_search': '通过PID搜索图片 --> 指令:p搜 [pid]',
'translate': '出国旅游助手(狗头) --> 指令:英翻/翻英/日翻/翻日/韩翻/翻韩',
'cover': '快捷的b站封面获取方式 --> 指令:b封面 [连接/av/bv/cv/直播id]'
"update_pic": "一些对图片的操作 --> 指令:操作图片/图片/修改图片(包含 10 种图片操作)",
"search_buff_skin_price": "BUFF皮肤底价查询 --> 指令:查询皮肤(代理ip不得劲)",
"weather": "天气查询 --> 指令:xx天气",
"yiqing": "实时疫情数据 --> 指令:疫情查询/疫情/查询疫情",
"bt": "bt(磁力搜索){仅支持私聊,懂的都懂} --> 指令:bt",
"reimu": "老司机必备!{仅支持私聊,懂的都懂}-> 指令:上车",
"what_anime": "靠图识番 --> 指令:识番",
"nonebot_plugin_picsearcher": "以图搜图 --> 指令:识图/这是什么/上一张图是什么",
"search_anime": "找不到想看的动漫吗? --> 指令:搜番",
"songpicker2": "来一首歌听听? --> 指令:点歌",
"epic": "epic速速白嫖 --> 指令:epic",
"pixiv_r": "P站排行榜直接冲 --> 指令:p站排行(可含参数)",
"pixiv_s": "P站的图随便搜搜 --> 指令:搜图(可含参数)",
"pid_search": "通过PID搜索图片 --> 指令:p搜 [pid]",
"translate": "出国旅游助手(狗头) --> 指令:英翻/翻英/日翻/翻日/韩翻/翻韩",
"cover": "快捷的b站封面获取方式 --> 指令:b封面 [连接/av/bv/cv/直播id]",
}
# 娱乐
entertainment_help = {
'sign_in': '签到(影响色图和开箱) --> 指令:签到/我的签到/好感度排行/好感度总榜/好感度总榜[屏蔽我/显示我]',
'send_img': '发送图片 --> 指令:美图/萝莉/壁纸/(美图/萝莉/壁纸[id])/N张图xx(N<=9)',
'send_setu': '不要小看涩图啊混蛋! --> 指令:色图/色图[id]/n张色图/n张xx色图/查色图/...(请查看 色图 帮助)',
'white2black_img': '黑白草图 --> 指令:黑白图/黑白草图',
'coser': '三次元也不戳 --> 指令:coser',
'jitang': '不喝点什么不舒服 --> 指令:鸡汤/语录',
'send_dinggong_voice': '骂我(傲娇?) --> 指令:骂老子',
'poke': '戳一戳发送语音美图萝莉图不美哉?',
'open_cases': '模拟开箱(戒赌) --> 指令:开箱(N连开箱[N<=30])/我的开箱/群开箱统计/我的金色',
'luxun': '鲁迅说过 --> 指令:鲁迅说',
'fake_msg': '构造一个假消息 --> 指令:假消息',
'shop_handle': '商店系统(初始送100金币) --> 指令:商店/我的金币/购买道具/使用道具',
'draw_card_prts': '换个地方当非酋TvT... --> 指令:方舟一井/方舟N抽(0<N<300)',
'draw_card_genshin': '提瓦特是个好地方! --> 指令:原神一井/原神N抽(0<N<180)/原神武器/角色N抽/重置原神抽卡次数',
'draw_card_pretty': '赛马娘!!!! --> 指令:赛马娘一井/赛马娘N抽/赛马娘卡一井/赛马娘卡N抽(0<N<200)',
'draw_card_guardian': '坎公骑冠剑.... --> 指令:坎公骑冠剑一井/坎公骑冠剑武器一井/坎公骑冠剑N抽/坎公骑冠剑武器N抽(0<N<300)',
'draw_card_pcr': '公主连结(国服)来几发 --> 指令:pcr一井/pcrN抽(0<N<300)',
'draw_card_azur': '我跟方舟坐狱友 --> 指令:碧蓝轻型/重型/特型N抽(0<N<300)',
'draw_card_fgo': '你就是我的马斯塔嘛 --> 指令:fgoN抽(0<N<300)',
'draw_card_onmyoji': '普通的阴阳师召唤 --> 指令:阴阳师N抽(0<N<300)',
'one_friend': '我有一个朋友想问问... --> 指令:我有一个朋友想问问xxx(内容)',
'nickname': '区区昵称! --> 指令:以后叫我xx(昵称)/我是谁/取消昵称',
'almanac': '这是一张正经的黄历 --> 指令:原神黄历',
'material_remind': '看看原神今天要刷什么 --> 指令:今日素材/今日材料/今天素材/今天材料',
'qiu_qiu_translation': '这家伙到底在说什么? --> 指令:丘丘翻译/丘丘一下/丘丘语翻译',
'query_resource_points': '地图资源速速查看 --> 指令:原神资源查询xx/原神资源列表/哪里有xx/xx在哪(xx=资源名称)',
'russian': '紧张刺激的俄罗斯轮盘 --> 指令:俄罗斯轮盘帮助',
'gold_redbag': '运气项目又来啦! --> 指令:塞红包/ 抢红包指令: 开/抢/戳一戳真寻/ 退回:退回未抢完的红包',
'poetry': '突然文艺的真寻是否搞错了什么 --> 指令:念诗/来首诗/念首诗',
'comments_163': '生了个人,我很抱歉 --> 指令:到点了/12点了/网易云热评/网易云评论',
"sign_in": "签到(影响色图和开箱) --> 指令:签到/我的签到/好感度排行/好感度总榜/好感度总榜[屏蔽我/显示我]",
"send_img": "发送图片 --> 指令:美图/萝莉/壁纸/(美图/萝莉/壁纸[id])/N张图xx(N<=9)",
"send_setu": "不要小看涩图啊混蛋! --> 指令:色图/色图[id]/n张色图/n张xx色图/查色图/...(请查看 色图 帮助)",
"white2black_img": "黑白草图 --> 指令:黑白图/黑白草图",
"coser": "三次元也不戳 --> 指令:coser",
"jitang": "不喝点什么不舒服 --> 指令:鸡汤/语录",
"send_dinggong_voice": "骂我(傲娇?) --> 指令:骂老子",
"poke": "戳一戳发送语音美图萝莉图不美哉?",
"open_cases": "模拟开箱(戒赌) --> 指令:开箱(N连开箱[N<=30])/我的开箱/群开箱统计/我的金色",
"luxun": "鲁迅说过 --> 指令:鲁迅说",
"fake_msg": "构造一个假消息 --> 指令:假消息",
"shop_handle": "商店系统(初始送100金币) --> 指令:商店/我的金币/购买道具/使用道具",
"draw_card_prts": "换个地方当非酋TvT... --> 指令:方舟一井/方舟N抽(0<N<300)",
"draw_card_genshin": "提瓦特是个好地方! --> 指令:原神一井/原神N抽(0<N<180)/原神武器/角色N抽/重置原神抽卡次数",
"draw_card_pretty": "赛马娘!!!! --> 指令:赛马娘一井/赛马娘N抽/赛马娘卡一井/赛马娘卡N抽(0<N<200)",
"draw_card_guardian": "坎公骑冠剑.... --> 指令:坎公骑冠剑一井/坎公骑冠剑武器一井/坎公骑冠剑N抽/坎公骑冠剑武器N抽(0<N<300)",
"draw_card_pcr": "公主连结(国服)来几发 --> 指令:pcr一井/pcrN抽(0<N<300)",
"draw_card_azur": "我跟方舟坐狱友 --> 指令:碧蓝轻型/重型/特型N抽(0<N<300)",
"draw_card_fgo": "你就是我的马斯塔嘛 --> 指令:fgoN抽(0<N<300)",
"draw_card_onmyoji": "普通的阴阳师召唤 --> 指令:阴阳师N抽(0<N<300)",
"one_friend": "我有一个朋友想问问... --> 指令:我有一个朋友想问问xxx(内容)",
"nickname": "区区昵称! --> 指令:以后叫我xx(昵称)/我是谁/取消昵称",
"almanac": "这是一张正经的黄历 --> 指令:原神黄历",
"material_remind": "看看原神今天要刷什么 --> 指令:今日素材/今日材料/今天素材/今天材料",
"qiu_qiu_translation": "这家伙到底在说什么? --> 指令:丘丘翻译/丘丘一下/丘丘语翻译",
"query_resource_points": "地图资源速速查看 --> 指令:原神资源查询xx[路径]/原神资源列表/哪里有xx/xx在哪(xx=资源名称)",
"russian": "紧张刺激的俄罗斯轮盘 --> 指令:俄罗斯轮盘帮助",
"gold_redbag": "运气项目又来啦! --> 指令:塞红包/ 抢红包指令: 开/抢/戳一戳真寻/ 退回:退回未抢完的红包",
"poetry": "突然文艺的真寻是否搞错了什么 --> 指令:念诗/来首诗/念首诗",
"comments_163": "生了个人,我很抱歉 --> 指令:到点了/12点了/网易云热评/网易云评论",
"pix_gallery": "偶尔也想看看美图? --> 指令:PIX [关键词/uid/pid:pid] [num]/查看pix图库 [关键词]/显示pix关键词",
}
# 其他
other_help = [
'查看当前的群欢迎消息 --> 指令:群欢迎消息',
'这是一份正经的自我介绍 --> 指令:自我介绍',
'不得看看自己权力多大? --> 指令:我的权限',
'有人记得你是什么时候加入我们的 --> 指令:我的信息',
'让我看看更新了什么 --> 指令:更新信息',
'真寻给我把话收回去! --> 指令:撤回 [id](默认0)',
'群拥有的权限 --> 指令:查看群权限',
'数据统计可视化_1 --> 指令:功能调用统计/日功能调用统计/周功能调用统计/月功能调用统计',
'数据统计可视化_2 --> 指令:周功能调用统计 [功能名称]/月功能调用统计 [功能名称]'
"查看当前的群欢迎消息 --> 指令:群欢迎消息",
"这是一份正经的自我介绍 --> 指令:自我介绍",
"不得看看自己权力多大? --> 指令:我的权限",
"有人记得你是什么时候加入我们的 --> 指令:我的信息",
"让我看看更新了什么 --> 指令:更新信息",
"真寻给我把话收回去! --> 指令:撤回 [id](默认0)",
"群拥有的权限 --> 指令:查看群权限",
"数据统计可视化_1 --> 指令:功能调用统计/日功能调用统计/周功能调用统计/月功能调用统计",
"数据统计可视化_2 --> 指令:周功能调用统计 [功能名称]/月功能调用统计 [功能名称]",
"这里是PIX图库! --> 指令:添加pix关键词 [关键词]/添加pixuid/pid [UID/PID]/我的pix关键词",
]
+99 -68
View File
@@ -1,16 +1,20 @@
from utils.img_utils import CreateImg
from utils.image_utils import CreateImg
from configs.path_config import IMAGE_PATH, DATA_PATH
import ujson as json
import os
from .config import *
from nonebot import require
from configs.config import INITIAL_OPEN_CASE_COUNT, INITIAL_SETU_PROBABILITY, ADMIN_DEFAULT_AUTH
from configs.config import (
INITIAL_OPEN_CASE_COUNT,
INITIAL_SETU_PROBABILITY,
ADMIN_DEFAULT_AUTH,
)
from configs.config import plugins2info_dict
import nonebot
export = require("nonebot_plugin_manager")
width = 1500
width = 1600
e_height = 0
u_height = 950
o_height = 1500
@@ -18,139 +22,166 @@ o_height = 1500
def create_help_img():
if os.path.exists(IMAGE_PATH + 'help.png'):
os.remove(IMAGE_PATH + 'help.png')
h = (100 + len(utility_help) * 24 + len(entertainment_help) * 24 + len(other_help) * 24) * 2
if os.path.exists(IMAGE_PATH + "help.png"):
os.remove(IMAGE_PATH + "help.png")
h = (
100
+ len(utility_help) * 24
+ len(entertainment_help) * 24
+ len(other_help) * 24
) * 2
A = CreateImg(width, h - 200, font_size=24)
e = CreateImg(width, len(entertainment_help) * 42, font_size=24)
rst = ''
rst = ""
i = 0
for cmd in entertainment_help:
rst += f'{i + 1}.{entertainment_help[cmd]}\n'
rst += f"{i + 1}.{entertainment_help[cmd]}\n"
i += 1
e.text((10, 10), '娱乐功能:')
e.text((10, 10), "娱乐功能:")
e.text((40, 40), rst)
u = CreateImg(width, len(utility_help) * 40 + 50, font_size=24, color='black')
rst = ''
u = CreateImg(width, len(utility_help) * 40 + 50, font_size=24, color="black")
rst = ""
i = 0
for cmd in utility_help:
rst += f'{i + 1}.{utility_help[cmd]}\n'
rst += f"{i + 1}.{utility_help[cmd]}\n"
i += 1
u.text((10, 10), '实用功能:', fill=(255, 255, 255))
u.text((10, 10), "实用功能:", fill=(255, 255, 255))
u.text((40, 40), rst, fill=(255, 255, 255))
o = CreateImg(width, len(other_help) * 40, font_size=24)
rst = ''
rst = ""
i = 0
for i in range(len(other_help)):
rst += f'{i + 1}.{other_help[i]}\n'
rst += f"{i + 1}.{other_help[i]}\n"
i += 1
o.text((10, 10), '其他功能:')
o.text((10, 10), "其他功能:")
o.text((40, 40), rst)
A.paste(e, (0, 0))
A.paste(u, (0, u_height))
A.paste(o, (0, o_height))
A.text((10, h * 0.68), '大部分交互功能可以通过输入‘取消’,‘算了’来取消当前交互\n对真寻说 “真寻帮助 指令名” 获取对应详细帮助\n'
'可以通过 “滴滴滴- [消息]” 联系管理员(有趣的想法尽管来吧!<还有Bug和建议>)'
'\n[群管理员请看 管理员帮助(群主与管理员自带 5 级权限)]\n\n'
'\t「如果真寻回复了一些不符合人设的话,那是因为每日白嫖的图灵次数已用完,使用的是备用接口【QAQ】」')
A.text(
(10, h * 0.68),
"大部分交互功能可以通过输入‘取消’,‘算了’来取消当前交互\n对真寻说 “真寻帮助 指令名” 获取对应详细帮助\n"
"可以通过 “滴滴滴- [消息]” 联系管理员(有趣的想法尽管来吧!<还有Bug和建议>)"
"\n[群管理员请看 管理员帮助(群主与管理员自带 5 级权限)]\n\n"
"\t「如果真寻回复了一些不符合人设的话,那是因为每日白嫖的图灵次数已用完,使用的是备用接口【QAQ】」",
)
A.save(IMAGE_PATH + 'help.png')
A.save(IMAGE_PATH + "help.png")
def create_group_help_img(group_id: int):
group_id = str(group_id)
try:
with open(DATA_PATH + 'manager/plugin_list.json', 'r', encoding='utf8') as f:
with open(DATA_PATH + "manager/plugin_list.json", "r", encoding="utf8") as f:
plugin_list = json.load(f)
except (ValueError, FileNotFoundError):
pass
h = (100 + len(utility_help) * 24 + len(entertainment_help) * 24 + len(other_help) * 24) * 2
A = CreateImg(1200, h - 200, font_size=24)
u = CreateImg(1200, len(utility_help) * 40, font_size=24, color='black')
o = CreateImg(1200, len(other_help) * 40, font_size=24)
h = (
100
+ len(utility_help) * 24
+ len(entertainment_help) * 24
+ len(other_help) * 24
) * 2
A = CreateImg(width, h - 200, font_size=24)
u = CreateImg(width, len(utility_help) * 40, font_size=24, color="black")
o = CreateImg(width, len(other_help) * 40, font_size=24)
e = CreateImg(width, len(entertainment_help) * 42, font_size=24)
rst = ''
rst = ""
i = 1
for cmd in entertainment_help.keys():
flag, dfg = parse_cmd(cmd, group_id, plugin_list)
if dfg:
cmd = rcmd(dfg)
rst += f'【{flag}】{i}.{entertainment_help[cmd]}\n'
rst += f"【{flag}】{i}.{entertainment_help[cmd]}\n"
i += 1
e.text((10, 10), '娱乐功能:')
e.text((10, 10), "娱乐功能:")
e.text((40, 40), rst)
rst = ''
rst = ""
i = 1
for cmd in utility_help.keys():
flag, dfg = parse_cmd(cmd, group_id, plugin_list)
rst += f'【{flag}】{i}.{utility_help[cmd]}\n'
rst += f"【{flag}】{i}.{utility_help[cmd]}\n"
i += 1
u.text((10, 10), '实用功能:', fill=(255, 255, 255))
u.text((10, 10), "实用功能:", fill=(255, 255, 255))
u.text((40, 40), rst, fill=(255, 255, 255))
rst = ''
rst = ""
for i in range(len(other_help)):
rst += f'{i + 1}.{other_help[i]}\n'
o.text((10, 10), '其他功能:')
rst += f"{i + 1}.{other_help[i]}\n"
o.text((10, 10), "其他功能:")
o.text((40, 40), rst)
A.paste(e, (0, 0))
A.paste(u, (0, u_height))
A.paste(o, (0, o_height))
# A.text((width, 10), f'总开关【{"√" if data["总开关"] else "×"}】')
A.text((10, h * 0.68), '大部分交互功能可以通过输入‘取消’,‘算了’来取消当前交互\n对真寻说 “真寻帮助 指令名” 获取对应详细帮助\n'
'可以通过 “滴滴滴- [消息]” 联系管理员(有趣的想法尽管来吧!<还有Bug和建议>)'
f'\n[群管理员请看 管理员帮助(群主与管理员自带 {ADMIN_DEFAULT_AUTH} 级权限)]')
A.text((10, h * 0.77), f"【注】「色图概率:好感度 + {int(INITIAL_SETU_PROBABILITY*100)}%\n"
f"\t\t每 3 点好感度 + 1次开箱,初始 {INITIAL_OPEN_CASE_COUNT} 次\n"
f"\t\t开启/关闭功能只需输入‘开启/关闭 指令名’(每个功能的第一个指令)」\n"
f"\t\t示例:开启签到\n"
f"\t\t可以通过管理员开关自动发送消息(早晚安等)\n"
f"\t\t^请查看管理员帮助^\n\n"
f"\t「如果真寻回复了一些不符合人设的话,那是因为每日白嫖的图灵次数已用完,使用的是备用接口【QAQ】」")
A.save(DATA_PATH + f'group_help/{group_id}.png')
A.text(
(10, h * 0.68),
"大部分交互功能可以通过输入‘取消’,‘算了’来取消当前交互\n对真寻说 “真寻帮助 指令名” 获取对应详细帮助\n"
"可以通过 “滴滴滴- [消息]” 联系管理员(有趣的想法尽管来吧!<还有Bug和建议>)"
f"\n[群管理员请看 管理员帮助(群主与管理员自带 {ADMIN_DEFAULT_AUTH} 级权限)]",
)
A.text(
(10, h * 0.77),
f"【注】「色图概率:好感度 + {int(INITIAL_SETU_PROBABILITY*100)}%\n"
f"\t\t每 3 点好感度 + 1次开箱,初始 {INITIAL_OPEN_CASE_COUNT} 次\n"
f"\t\t开启/关闭功能只需输入‘开启/关闭 指令名’(每个功能的第一个指令)」\n"
f"\t\t示例:开启签到\n"
f"\t\t可以通过管理员开关自动发送消息(早晚安等)\n"
f"\t\t^请查看管理员帮助^\n\n"
f"\t「如果真寻回复了一些不符合人设的话,那是因为每日白嫖的图灵次数已用完,使用的是备用接口【QAQ】」",
)
A.save(DATA_PATH + f"group_help/{group_id}.png")
def parse_cmd(cmd, group_id, plugin_list):
flag = '√'
flag = "√"
dfg = None
if cmd.find('draw_card') != -1:
lst = cmd.split('_')
cmd = lst[0] + '_' + lst[1]
if cmd.find("draw_card") != -1:
lst = cmd.split("_")
cmd = lst[0] + "_" + lst[1]
dfg = lst[-1]
elif cmd == 'pixiv_r':
cmd = 'pixiv'
dfg = 'r'
elif cmd == 'pixiv_s':
cmd = 'pixiv'
dfg = 's'
elif cmd == "pixiv_r":
cmd = "pixiv"
dfg = "r"
elif cmd == "pixiv_s":
cmd = "pixiv"
dfg = "s"
if group_id in plugin_list[cmd]:
if not plugin_list[cmd][group_id]:
flag = '×'
if cmd in ['bt', 'reimu', 'nickname']:
flag = '- '
flag = "×"
if cmd in ["bt", "reimu", "nickname"]:
flag = "- "
return flag, dfg
def rcmd(dfg):
if dfg in ['prts', 'genshin', 'pretty', 'guardian', 'pcr', 'azur', 'onmyoji', 'fgo']:
return 'draw_card_' + dfg
if dfg == 'r':
return 'pixiv_r'
if dfg == 's':
return 'pixiv_s'
if dfg in [
"prts",
"genshin",
"pretty",
"guardian",
"pcr",
"azur",
"onmyoji",
"fgo",
]:
return "draw_card_" + dfg
if dfg == "r":
return "pixiv_r"
if dfg == "s":
return "pixiv_s"
def get_plugin_help(msg: str) -> str:
plugin = None
for p in plugins2info_dict.keys():
if msg in plugins2info_dict[p]['cmd']:
if msg in plugins2info_dict[p]["cmd"]:
plugin = nonebot.plugin.get_plugin(p)
break
if plugin:
result = plugin.module.__getattribute__("__plugin_usage__")
return result
else:
return '没有此功能的帮助信息...'
return "没有此功能的帮助信息..."