From cab0f7b52226c064fa4dc781513b2a53e83d9bc4 Mon Sep 17 00:00:00 2001 From: HibiKier <775757368@qq.com> Date: Sun, 22 May 2022 12:49:32 +0800 Subject: [PATCH] update change_pixiv_image_links --- README.md | 5 +++++ plugins/ai/__init__.py | 2 +- plugins/bilibili_sub/data_source.py | 6 +++--- plugins/pid_search.py | 5 ++++- utils/utils.py | 4 +++- 5 files changed, 16 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 24caa17b..1bb191d7 100644 --- a/README.md +++ b/README.md @@ -238,6 +238,11 @@ __Docker 最新版本由 [Sakuracio](https://github.com/Sakuracio) 提供__ ## 更新 +### 2022/5/22 + +* 使用action自动更新poetry.lock +* fix(bilibili_sub): card is None and timeout + ### 2022/5/21 * 修复搜番无结果时报错无正确反馈 diff --git a/plugins/ai/__init__.py b/plugins/ai/__init__.py index db024e19..1f0a7397 100755 --- a/plugins/ai/__init__.py +++ b/plugins/ai/__init__.py @@ -37,7 +37,7 @@ Config.add_plugin_config( "alapi", "ALAPI_TOKEN", None, help_="在 https://admin.alapi.cn/user/login 登录后获取token" ) -ai = on_message(rule=to_me(), priority=8) +ai = on_message(rule=to_me(), priority=998) @ai.handle() diff --git a/plugins/bilibili_sub/data_source.py b/plugins/bilibili_sub/data_source.py index d495572a..7aefedae 100755 --- a/plugins/bilibili_sub/data_source.py +++ b/plugins/bilibili_sub/data_source.py @@ -324,7 +324,7 @@ async def get_user_dynamic( wait_until="networkidle", timeout=10000, ) - await page.set_viewport_size({"width": 2560, "height": 1080}) + await page.set_viewport_size({"width": 2560, "height": 1080, "timeout": 10000*20}) # timeout: 200s # 删除置顶 await page.evaluate( """ @@ -334,11 +334,11 @@ async def get_user_dynamic( } """ ) - card = await page.query_selector(".bili-dyn-list__item") + card = page.locator(".bili-dyn-list__item").first + await card.wait_for() # 截图并保存 await card.screenshot( path=dynamic_path / f"{local_user.sub_id}_{dynamic_upload_time}.jpg", - timeout=100000, ) except Exception as e: logger.error(f"B站订阅:获取用户动态 发送错误 {type(e)}:{e}") diff --git a/plugins/pid_search.py b/plugins/pid_search.py index d795a10c..82c3e474 100755 --- a/plugins/pid_search.py +++ b/plugins/pid_search.py @@ -1,7 +1,7 @@ from nonebot import on_command from nonebot.adapters.onebot.v11 import Bot, MessageEvent, Message, GroupMessageEvent from nonebot.typing import T_State -from utils.utils import is_number +from utils.utils import is_number, change_pixiv_image_links from utils.message_builder import image from services.log import logger from asyncio.exceptions import TimeoutError @@ -68,6 +68,8 @@ async def _g(event: MessageEvent, state: T_State, pid: str = Arg("pid")): except Exception as e: await pid_search.finish(f"发生了一些错误..{type(e)}:{e}") else: + if data.get("error"): + await pid_search.finish(data["error"]["user_message"], at_sender=True) data = data["illust"] if not data["width"] and not data["height"]: await pid_search.finish(f"没有搜索到 PID:{pid} 的图片", at_sender=True) @@ -82,6 +84,7 @@ async def _g(event: MessageEvent, state: T_State, pid: str = Arg("pid")): for image_url in data["meta_pages"]: image_list.append(image_url["image_urls"]["original"]) for i, img_url in enumerate(image_list): + img_url = change_pixiv_image_links(img_url) if not await AsyncHttpx.download_file( img_url, IMAGE_PATH / "temp" / f"pid_search_{event.user_id}_{i}.png", diff --git a/utils/utils.py b/utils/utils.py index 7133da6a..581c7df5 100755 --- a/utils/utils.py +++ b/utils/utils.py @@ -1,7 +1,7 @@ from datetime import datetime from collections import defaultdict from nonebot import require -from configs.config import SYSTEM_PROXY +from configs.config import SYSTEM_PROXY, Config from typing import List, Union, Optional, Type, Any from nonebot.adapters.onebot.v11 import Bot, Message from nonebot.matcher import matchers, Matcher @@ -389,6 +389,8 @@ def change_pixiv_image_links( url = img_sp[0] img_type = img_sp[1] url = url.replace("original", "master") + f"_master1200.{img_type}" + if not nginx_url: + nginx_url = Config.get_config("pixiv", "PIXIV_NGINX_URL") if nginx_url: url = ( url.replace("i.pximg.net", nginx_url)