mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 14:22:55 +08:00
56 lines
1.4 KiB
Python
56 lines
1.4 KiB
Python
from nonebot.plugin import PluginMetadata
|
|
from nonebot_plugin_alconna import Alconna, Arparma, on_alconna
|
|
from nonebot_plugin_saa import Text
|
|
from nonebot_plugin_session import EventSession
|
|
|
|
from zhenxun.configs.utils import PluginExtraData
|
|
from zhenxun.services.log import logger
|
|
|
|
from ._data_source import get_data
|
|
|
|
__plugin_meta__ = PluginMetadata(
|
|
name="古诗",
|
|
description="为什么突然文艺起来了!",
|
|
usage="""
|
|
平白无故念首诗
|
|
示例:念诗/来首诗/念首诗
|
|
""".strip(),
|
|
extra=PluginExtraData(
|
|
author="HibiKier",
|
|
version="0.1",
|
|
).dict(),
|
|
)
|
|
|
|
_matcher = on_alconna(
|
|
Alconna("念诗"),
|
|
priority=5,
|
|
block=True,
|
|
)
|
|
|
|
_matcher.shortcut(
|
|
"(来首诗|念首诗)",
|
|
command="念诗",
|
|
arguments=[],
|
|
prefix=True,
|
|
)
|
|
|
|
|
|
poetry_url = "https://v2.alapi.cn/api/shici"
|
|
|
|
|
|
@_matcher.handle()
|
|
async def _(session: EventSession, arparma: Arparma):
|
|
data, code = await get_data(poetry_url)
|
|
if code != 200 and isinstance(data, str):
|
|
await Text(data).finish(reply=True)
|
|
data = data["data"] # type: ignore
|
|
content = data["content"] # type: ignore
|
|
title = data["origin"] # type: ignore
|
|
author = data["author"] # type: ignore
|
|
await Text(f"{content}\n\t——{author}《{title}》").send(reply=True)
|
|
logger.info(
|
|
f" 发送古诗: f'{content}\n\t--{author}《{title}》'",
|
|
arparma.header_result,
|
|
session=session,
|
|
)
|