From abb7afadbc91c889da8ea40d2aa11205471ae089 Mon Sep 17 00:00:00 2001 From: WindowsSov8forUs Date: Wed, 15 May 2024 12:35:16 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=88=BF=E9=97=B4?= =?UTF-8?q?=E5=8F=B7=E8=8E=B7=E5=8F=96=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- setup.py | 2 +- tsugu_api/_bandoristation.py | 7 +++++-- tsugu_api/exception.py | 9 ++++++++- tsugu_api_async/_bandoristation.py | 9 ++++++--- tsugu_api_async/exception.py | 9 ++++++++- 5 files changed, 28 insertions(+), 8 deletions(-) diff --git a/setup.py b/setup.py index 8d0f6f1..e071b28 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ setup( name='tsugu-api-python', - version='1.1.0', + version='1.1.1', author='WindowsSov8', author_email='qwertyuiop2333@hotmail.com', description='Tsugu BanGDream Bot 的功能 API 统合包', diff --git a/tsugu_api/_bandoristation.py b/tsugu_api/_bandoristation.py index a24679a..cf9eeea 100644 --- a/tsugu_api/_bandoristation.py +++ b/tsugu_api/_bandoristation.py @@ -1,7 +1,7 @@ from tsugu_api import settings from tsugu_api._network import Api from tsugu_api._typing import _StationRoom -from tsugu_api.exception import RoomSubmitFailure +from tsugu_api.exception import RoomQueryFailure, RoomSubmitFailure BANDORI_STATION_URL = 'https://api.bandoristation.com/index.php' @@ -47,7 +47,10 @@ def query_room_number() -> list[_StationRoom]: } # 发送请求 - return Api( + response = Api( BANDORI_STATION_URL, proxy=settings.backend_proxy ).get(params).json() + if response['status'] == 'failure': + raise RoomQueryFailure(response['response']) + return response['response'] diff --git a/tsugu_api/exception.py b/tsugu_api/exception.py index 7c8858d..4403e55 100644 --- a/tsugu_api/exception.py +++ b/tsugu_api/exception.py @@ -1,5 +1,12 @@ class RoomSubmitFailure(BaseException): - '''车牌号上传失败''' + '''房间号上传失败''' + def __init__(self, response: str) -> None: + '''初始化''' + self.message = response + return + +class RoomQueryFailure(BaseException): + '''房间号获取失败''' def __init__(self, response: str) -> None: '''初始化''' self.message = response diff --git a/tsugu_api_async/_bandoristation.py b/tsugu_api_async/_bandoristation.py index f99bf55..d96ff5f 100644 --- a/tsugu_api_async/_bandoristation.py +++ b/tsugu_api_async/_bandoristation.py @@ -3,7 +3,7 @@ from tsugu_api_async import settings from tsugu_api_async._network import Api from tsugu_api_async._typing import _StationRoom -from tsugu_api_async.exception import RoomSubmitFailure +from tsugu_api_async.exception import RoomQueryFailure, RoomSubmitFailure BANDORI_STATION_URL = 'https://api.bandoristation.com/index.php' @@ -55,5 +55,8 @@ async def query_room_number() -> list[_StationRoom]: BANDORI_STATION_URL, proxy=settings.backend_proxy ).get(params) - if isinstance(response, Response): return response.json() - else: return await response.json() + if isinstance(response, Response): response = response.json() + else: response = await response.json() + if response['status'] == 'failure': + raise RoomQueryFailure(response['response']) + return response['response'] diff --git a/tsugu_api_async/exception.py b/tsugu_api_async/exception.py index 7c8858d..4403e55 100644 --- a/tsugu_api_async/exception.py +++ b/tsugu_api_async/exception.py @@ -1,5 +1,12 @@ class RoomSubmitFailure(BaseException): - '''车牌号上传失败''' + '''房间号上传失败''' + def __init__(self, response: str) -> None: + '''初始化''' + self.message = response + return + +class RoomQueryFailure(BaseException): + '''房间号获取失败''' def __init__(self, response: str) -> None: '''初始化''' self.message = response