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 ### 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" "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() @ai.handle()

View File

@ -324,7 +324,7 @@ async def get_user_dynamic(
wait_until="networkidle", wait_until="networkidle",
timeout=10000, 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( 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( await card.screenshot(
path=dynamic_path / f"{local_user.sub_id}_{dynamic_upload_time}.jpg", path=dynamic_path / f"{local_user.sub_id}_{dynamic_upload_time}.jpg",
timeout=100000,
) )
except Exception as e: except Exception as e:
logger.error(f"B站订阅获取用户动态 发送错误 {type(e)}{e}") logger.error(f"B站订阅获取用户动态 发送错误 {type(e)}{e}")

View File

@ -1,7 +1,7 @@
from nonebot import on_command from nonebot import on_command
from nonebot.adapters.onebot.v11 import Bot, MessageEvent, Message, GroupMessageEvent from nonebot.adapters.onebot.v11 import Bot, MessageEvent, Message, GroupMessageEvent
from nonebot.typing import T_State 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 utils.message_builder import image
from services.log import logger from services.log import logger
from asyncio.exceptions import TimeoutError 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: except Exception as e:
await pid_search.finish(f"发生了一些错误..{type(e)}{e}") await pid_search.finish(f"发生了一些错误..{type(e)}{e}")
else: else:
if data.get("error"):
await pid_search.finish(data["error"]["user_message"], at_sender=True)
data = data["illust"] data = data["illust"]
if not data["width"] and not data["height"]: if not data["width"] and not data["height"]:
await pid_search.finish(f"没有搜索到 PID{pid} 的图片", at_sender=True) 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"]: for image_url in data["meta_pages"]:
image_list.append(image_url["image_urls"]["original"]) image_list.append(image_url["image_urls"]["original"])
for i, img_url in enumerate(image_list): for i, img_url in enumerate(image_list):
img_url = change_pixiv_image_links(img_url)
if not await AsyncHttpx.download_file( if not await AsyncHttpx.download_file(
img_url, img_url,
IMAGE_PATH / "temp" / f"pid_search_{event.user_id}_{i}.png", IMAGE_PATH / "temp" / f"pid_search_{event.user_id}_{i}.png",

View File

@ -1,7 +1,7 @@
from datetime import datetime from datetime import datetime
from collections import defaultdict from collections import defaultdict
from nonebot import require 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 typing import List, Union, Optional, Type, Any
from nonebot.adapters.onebot.v11 import Bot, Message from nonebot.adapters.onebot.v11 import Bot, Message
from nonebot.matcher import matchers, Matcher from nonebot.matcher import matchers, Matcher
@ -389,6 +389,8 @@ def change_pixiv_image_links(
url = img_sp[0] url = img_sp[0]
img_type = img_sp[1] img_type = img_sp[1]
url = url.replace("original", "master") + f"_master1200.{img_type}" 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: if nginx_url:
url = ( url = (
url.replace("i.pximg.net", nginx_url) url.replace("i.pximg.net", nginx_url)