update change_pixiv_image_links

This commit is contained in:
HibiKier 2022-05-22 12:49:32 +08:00
parent c511ef50a2
commit cab0f7b522
5 changed files with 16 additions and 6 deletions

View File

@ -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
* 修复搜番无结果时报错无正确反馈

View File

@ -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()

View File

@ -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}")

View File

@ -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",

View File

@ -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)