mirror of
https://github.com/suyiiyii/nonebot-bison.git
synced 2025-06-04 02:26:11 +08:00
🐛 应用部分推荐的重命名
This commit is contained in:
parent
f865cef427
commit
5111baa89c
@ -32,7 +32,7 @@ async def init_scheduler():
|
|||||||
_schedule_class_platform_dict[site].append(platform_name)
|
_schedule_class_platform_dict[site].append(platform_name)
|
||||||
for site, target_list in _schedule_class_dict.items():
|
for site, target_list in _schedule_class_dict.items():
|
||||||
if is_cookie_client_manager(site.client_mgr):
|
if is_cookie_client_manager(site.client_mgr):
|
||||||
await site.client_mgr.init_universal_cookie()
|
await site.client_mgr.refresh_universal_cookie()
|
||||||
if not plugin_config.bison_use_browser and site.require_browser:
|
if not plugin_config.bison_use_browser and site.require_browser:
|
||||||
logger.warning(f"{site.name} requires browser, it will not schedule.")
|
logger.warning(f"{site.name} requires browser, it will not schedule.")
|
||||||
continue
|
continue
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
from typing import cast
|
from typing import cast
|
||||||
|
|
||||||
from nonebot.adapters import Message, MessageTemplate
|
from nonebot.typing import T_State
|
||||||
from nonebot.matcher import Matcher
|
from nonebot.matcher import Matcher
|
||||||
from nonebot.params import Arg, ArgPlainText
|
from nonebot.params import Arg, ArgPlainText
|
||||||
from nonebot.typing import T_State
|
from nonebot.adapters import Message, MessageTemplate
|
||||||
|
|
||||||
from .utils import common_platform, gen_handle_cancel
|
|
||||||
from ..config import config
|
from ..config import config
|
||||||
from ..config.db_model import Cookie
|
from ..config.db_model import Cookie
|
||||||
from ..platform import platform_manager
|
from ..platform import platform_manager
|
||||||
|
from .utils import common_platform, gen_handle_cancel
|
||||||
from ..utils.site import CookieClientManager, is_cookie_client_manager
|
from ..utils.site import CookieClientManager, is_cookie_client_manager
|
||||||
|
|
||||||
|
|
||||||
@ -20,12 +20,12 @@ def do_add_cookie(add_cookie: type[Matcher]):
|
|||||||
state["_prompt"] = (
|
state["_prompt"] = (
|
||||||
"请输入想要添加 Cookie 的平台,目前支持,请输入冒号左边的名称:\n"
|
"请输入想要添加 Cookie 的平台,目前支持,请输入冒号左边的名称:\n"
|
||||||
+ "".join(
|
+ "".join(
|
||||||
[
|
[
|
||||||
f"{platform_name}: {platform_manager[platform_name].name}\n"
|
f"{platform_name}: {platform_manager[platform_name].name}\n"
|
||||||
for platform_name in common_platform
|
for platform_name in common_platform
|
||||||
if is_cookie_client_manager(platform_manager[platform_name].site.client_mgr)
|
if is_cookie_client_manager(platform_manager[platform_name].site.client_mgr)
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
+ "要查看全部平台请输入:“全部”\n中止添加cookie过程请输入:“取消”"
|
+ "要查看全部平台请输入:“全部”\n中止添加cookie过程请输入:“取消”"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -54,10 +54,11 @@ def do_add_cookie(add_cookie: type[Matcher]):
|
|||||||
|
|
||||||
@add_cookie.got("cookie", MessageTemplate("{_prompt}"), [handle_cancel])
|
@add_cookie.got("cookie", MessageTemplate("{_prompt}"), [handle_cancel])
|
||||||
async def got_cookie(state: T_State, cookie: Message = Arg()):
|
async def got_cookie(state: T_State, cookie: Message = Arg()):
|
||||||
client_mgr: type[CookieClientManager] = cast(type[CookieClientManager],
|
client_mgr: type[CookieClientManager] = cast(
|
||||||
platform_manager[state["platform"]].site.client_mgr)
|
type[CookieClientManager], platform_manager[state["platform"]].site.client_mgr
|
||||||
|
)
|
||||||
cookie_text = cookie.extract_plain_text()
|
cookie_text = cookie.extract_plain_text()
|
||||||
if not await client_mgr.valid_cookie(cookie_text):
|
if not await client_mgr.validate_cookie(cookie_text):
|
||||||
await add_cookie.reject("无效的 Cookie,请检查后重新输入,详情见<待添加的文档>")
|
await add_cookie.reject("无效的 Cookie,请检查后重新输入,详情见<待添加的文档>")
|
||||||
state["cookie"] = cookie_text
|
state["cookie"] = cookie_text
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ class CookieClientManager(ClientManager):
|
|||||||
_cookie_cd: int = 10
|
_cookie_cd: int = 10
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
async def init_universal_cookie(cls):
|
async def refresh_universal_cookie(cls):
|
||||||
"""移除已有的匿名cookie,添加一个新的匿名cookie"""
|
"""移除已有的匿名cookie,添加一个新的匿名cookie"""
|
||||||
universal_cookies = await config.get_unviersal_cookie(cls._site_name)
|
universal_cookies = await config.get_unviersal_cookie(cls._site_name)
|
||||||
universal_cookie = Cookie(site_name=cls._site_name, content="{}", is_universal=True, tags={"temporary": True})
|
universal_cookie = Cookie(site_name=cls._site_name, content="{}", is_universal=True, tags={"temporary": True})
|
||||||
@ -71,7 +71,7 @@ class CookieClientManager(ClientManager):
|
|||||||
return cookie
|
return cookie
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
async def valid_cookie(cls, content: str) -> bool:
|
async def validate_cookie(cls, content: str) -> bool:
|
||||||
"""验证 cookie 内容是否有效,添加 cookie 时用,可根据平台的具体情况进行重写"""
|
"""验证 cookie 内容是否有效,添加 cookie 时用,可根据平台的具体情况进行重写"""
|
||||||
try:
|
try:
|
||||||
data = json.loads(content)
|
data = json.loads(content)
|
||||||
@ -133,7 +133,6 @@ class CookieClientManager(ClientManager):
|
|||||||
if cookie:
|
if cookie:
|
||||||
cookies.update(json.loads(cookie.content))
|
cookies.update(json.loads(cookie.content))
|
||||||
client.cookies = cookies
|
client.cookies = cookies
|
||||||
client._bison_cookie = cookie
|
|
||||||
client.event_hooks = {"response": [self._generate_hook(cookie)]}
|
client.event_hooks = {"response": [self._generate_hook(cookie)]}
|
||||||
return client
|
return client
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user