mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 06:12:53 +08:00
fix bug
This commit is contained in:
parent
eaf6d54757
commit
f038763041
@ -236,9 +236,15 @@ __Docker 最新版本由 [Sakuracio](https://github.com/Sakuracio) 提供__
|
||||
|
||||
## 更新
|
||||
|
||||
### 2022/2/20 \[v0.1.3.1]
|
||||
|
||||
* 修复pix下载临时文件目录错误
|
||||
* 修复AI,天气,发送图片ignore导致无法使用
|
||||
* 修复纯文本被动技能提醒有时无法删除控制文本
|
||||
|
||||
### 2022/2/19 \[v0.1.3] (nonebot beta2!)
|
||||
|
||||
* 由于nonebot升级版本,提供更新建议
|
||||
* 由于nonebot升级版本,提供更新建议(__该次升级将会导致nonebot.beta1以下的插件无法使用__
|
||||
* 保证services,utils,configs,plugins,basic_plugins,文件夹均为最新
|
||||
* 根目录有pyproject.toml与poetry.lock
|
||||
* 执行命令:
|
||||
@ -248,6 +254,7 @@ __Docker 最新版本由 [Sakuracio](https://github.com/Sakuracio) 提供__
|
||||
* playwright install chromium
|
||||
* python3 bot.py
|
||||
|
||||
|
||||
* 适配nonebot.beta2
|
||||
* 删除图片搜索 nonebot_plugin_picsearcher
|
||||
* 新增图片搜索 search_image
|
||||
|
||||
@ -1 +1 @@
|
||||
__version__: v0.1.3
|
||||
__version__: v0.1.3.1
|
||||
@ -11,7 +11,14 @@ async def handle_api_call(bot: Bot, api: str, data: Dict[str, Any]):
|
||||
r = None
|
||||
if (
|
||||
(api == "send_msg" and data["message"] == "group_id" or api == "send_group_msg")
|
||||
and (r := re.search("^\[\[_task\|(.*)]]", get_message_text(data["message"])))
|
||||
and (
|
||||
r := re.search(
|
||||
"^\[\[_task\|(.*)]]",
|
||||
data["message"]
|
||||
if isinstance(data["message"], str)
|
||||
else get_message_text(data["message"]),
|
||||
)
|
||||
)
|
||||
and r.group(1) in group_manager.get_task_data().keys()
|
||||
):
|
||||
task = r.group(1)
|
||||
@ -19,6 +26,11 @@ async def handle_api_call(bot: Bot, api: str, data: Dict[str, Any]):
|
||||
if not await group_manager.check_group_task_status(group_id, task):
|
||||
raise MockApiException(f"被动技能 {task} 处于关闭状态...")
|
||||
else:
|
||||
msg = str(data["message"][0])
|
||||
msg = msg.replace(f"[[_task|{task}]]", "")
|
||||
data["message"][0] = MessageSegment.text(msg)
|
||||
if isinstance(data["message"], str):
|
||||
msg = data["message"]
|
||||
msg = msg.replace(f"[[_task|{task}]]", "")
|
||||
data["message"] = msg
|
||||
else:
|
||||
msg = str(data["message"][0])
|
||||
msg = msg.replace(f"[[_task|{task}]]", "")
|
||||
data["message"][0] = MessageSegment.text(msg)
|
||||
|
||||
@ -6,11 +6,10 @@ from nonebot.adapters.onebot.v11 import (
|
||||
MessageEvent,
|
||||
)
|
||||
from nonebot.rule import to_me
|
||||
from nonebot.params import CommandArg
|
||||
from models.friend_user import FriendUser
|
||||
from models.group_member_info import GroupInfoUser
|
||||
from services.log import logger
|
||||
from utils.utils import get_message_img
|
||||
from utils.utils import get_message_img, get_message_text
|
||||
from .data_source import get_chat_result, hello, no_result
|
||||
from configs.config import NICKNAME, Config
|
||||
|
||||
@ -42,8 +41,8 @@ ai = on_message(rule=to_me(), priority=8)
|
||||
|
||||
|
||||
@ai.handle()
|
||||
async def _(bot: Bot, event: MessageEvent, arg: Message = CommandArg()):
|
||||
msg = arg.extract_plain_text().strip()
|
||||
async def _(bot: Bot, event: MessageEvent):
|
||||
msg = get_message_text(event.json())
|
||||
img = get_message_img(event.json())
|
||||
if "CQ:xml" in str(event.get_message()):
|
||||
return
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
from httpx import AsyncClient
|
||||
from datetime import datetime
|
||||
from nonebot.log import logger
|
||||
from nonebot.adapters.cqhttp import Bot
|
||||
from nonebot.adapters.onebot.v11 import Bot
|
||||
from configs.config import NICKNAME
|
||||
|
||||
|
||||
|
||||
@ -1,13 +1,12 @@
|
||||
from nonebot import on_message, on_regex
|
||||
from configs.path_config import IMAGE_PATH
|
||||
from utils.message_builder import image
|
||||
from utils.utils import is_number
|
||||
from utils.utils import is_number, get_message_text
|
||||
from services.log import logger
|
||||
from nonebot.adapters.onebot.v11 import MessageEvent, GroupMessageEvent, Message
|
||||
from nonebot.adapters.onebot.v11 import MessageEvent, GroupMessageEvent
|
||||
from utils.utils import FreqLimiter, cn2py
|
||||
from configs.config import Config
|
||||
from utils.manager import withdraw_message_manager
|
||||
from nonebot.params import CommandArg
|
||||
from .rule import rule
|
||||
import random
|
||||
import os
|
||||
@ -58,8 +57,8 @@ _path = IMAGE_PATH / "image_management"
|
||||
|
||||
|
||||
@send_img.handle()
|
||||
async def _(event: MessageEvent, arg: Message = CommandArg()):
|
||||
msg = arg.extract_plain_text().strip().split()
|
||||
async def _(event: MessageEvent):
|
||||
msg = get_message_text(event.json()).split()
|
||||
gallery = msg[0]
|
||||
if gallery not in Config.get_config("image_management", "IMAGE_DIR_LIST"):
|
||||
return
|
||||
|
||||
@ -227,8 +227,8 @@ async def _(event: MessageEvent):
|
||||
# 重置开箱
|
||||
@scheduler.scheduled_job(
|
||||
"cron",
|
||||
hour=0,
|
||||
minute=1,
|
||||
hour=10,
|
||||
minute=22,
|
||||
)
|
||||
async def _():
|
||||
await update_count_daily()
|
||||
|
||||
@ -238,7 +238,7 @@ async def get_image(img_url: str, user_id: int) -> Optional[str]:
|
||||
TEMP_PATH / f"pix_{user_id}_{img_url[-10:-4]}.jpg", "wb"
|
||||
) as f:
|
||||
await f.write(response.content)
|
||||
return f"pix_{user_id}_{img_url[-10:-4]}.jpg"
|
||||
return TEMP_PATH / f"pix_{user_id}_{img_url[-10:-4]}.jpg"
|
||||
except TimeoutError:
|
||||
logger.warning(f"PIX:{img_url} 图片下载超时...")
|
||||
pass
|
||||
|
||||
@ -149,11 +149,11 @@ async def _(bot: Bot, event: MessageEvent, arg: Message = CommandArg()):
|
||||
f"title:{title}\n"
|
||||
f"author:{author}\n"
|
||||
f"PID:{pid}\nUID:{uid}\n"
|
||||
f"{image(_img, 'temp')}"
|
||||
f"{image(_img)}"
|
||||
)
|
||||
)
|
||||
else:
|
||||
msg_id = await pix.send(image(_img, 'temp'))
|
||||
msg_id = await pix.send(image(_img))
|
||||
logger.info(
|
||||
f"(USER {event.user_id}, GROUP {event.group_id if isinstance(event, GroupMessageEvent) else 'private'})"
|
||||
f" 查看PIX图库PID: {pid}"
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
from nonebot import on_regex
|
||||
from .data_source import get_weather_of_city, get_city_list
|
||||
from nonebot.adapters.onebot.v11 import MessageEvent, GroupMessageEvent, Message
|
||||
from nonebot.adapters.onebot.v11 import MessageEvent, GroupMessageEvent
|
||||
from jieba import posseg
|
||||
from services.log import logger
|
||||
from nonebot.params import CommandArg
|
||||
import re
|
||||
from nonebot.params import RegexGroup
|
||||
from typing import Tuple, Any
|
||||
|
||||
|
||||
__zx_plugin_name__ = "天气查询"
|
||||
@ -27,19 +27,12 @@ __plugin_settings__ = {
|
||||
}
|
||||
|
||||
|
||||
weather = on_regex(r".{0,10}市?的?天气.{0,10}", priority=5, block=True)
|
||||
weather = on_regex(r".{0,10}?(.*)的?天气.*?.{0,10}", priority=5, block=True)
|
||||
|
||||
|
||||
@weather.handle()
|
||||
async def _(event: MessageEvent, arg: Message = CommandArg()):
|
||||
msg = arg.extract_plain_text().strip()
|
||||
msg1 = re.search(r".*?(.*)市?的?天气.*?", msg)
|
||||
msg2 = re.search(r".*?天气(.*).*?", msg)
|
||||
msg1 = msg1.group(1)
|
||||
msg2 = msg2.group(1)
|
||||
msg = msg1 if msg1 else msg2
|
||||
if msg[-1] == "的":
|
||||
msg = msg[:-1]
|
||||
async def _(event: MessageEvent, reg_group: Tuple[Any, ...] = RegexGroup()):
|
||||
msg = reg_group[0]
|
||||
if msg[-1] != "市":
|
||||
msg += "市"
|
||||
city = ""
|
||||
|
||||
@ -7,8 +7,10 @@
|
||||
"basic_plugins",
|
||||
"configs/path_config.py",
|
||||
"configs/utils",
|
||||
"bot.py"
|
||||
"bot.py",
|
||||
"poetry.lock",
|
||||
"pyproject.toml"
|
||||
],
|
||||
"add_file": ["poetry.lock", "pyproject.toml"],
|
||||
"add_file": [],
|
||||
"delete_file": []
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user