diff --git a/plugins/pix_gallery/_data_source.py b/plugins/pix_gallery/_data_source.py index f991c66e..28fd52e8 100644 --- a/plugins/pix_gallery/_data_source.py +++ b/plugins/pix_gallery/_data_source.py @@ -4,7 +4,7 @@ from asyncio.locks import Semaphore from asyncio.exceptions import TimeoutError from ._model.pixiv import Pixiv from typing import List, Optional -from utils.utils import change_pixiv_image_links +from utils.utils import change_pixiv_image_links, change_img_md5 from utils.image_utils import BuildImage from utils.http_utils import AsyncHttpx from services.log import logger @@ -238,6 +238,7 @@ async def get_image(img_url: str, user_id: int) -> Optional[str]: TEMP_PATH / f"pix_{user_id}_{img_url.split('/')[-1][:-4]}.jpg", "wb" ) as f: await f.write(response.content) + change_img_md5(TEMP_PATH / f"pix_{user_id}_{img_url.split('/')[-1][:-4]}.jpg") return TEMP_PATH / f"pix_{user_id}_{img_url.split('/')[-1][:-4]}.jpg" except TimeoutError: logger.warning(f"PIX:{img_url} 图片下载超时...") diff --git a/plugins/pixiv_rank_search/data_source.py b/plugins/pixiv_rank_search/data_source.py index 83792a49..b4eb3f2e 100755 --- a/plugins/pixiv_rank_search/data_source.py +++ b/plugins/pixiv_rank_search/data_source.py @@ -1,5 +1,6 @@ from configs.path_config import IMAGE_PATH from utils.message_builder import image +from utils.utils import change_img_md5 from asyncio.exceptions import TimeoutError from configs.config import Config from utils.http_utils import AsyncHttpx @@ -143,6 +144,7 @@ async def download_pixiv_imgs( file, timeout=Config.get_config("pixiv_rank_search", "TIMEOUT"), ): + change_img_md5(file) if forward_msg_index is not None: result += image( f"{user_id}_{forward_msg_index}_{index}_pixiv.jpg", diff --git a/plugins/send_setu_/send_setu/data_source.py b/plugins/send_setu_/send_setu/data_source.py index 6cb3414b..48d688ec 100755 --- a/plugins/send_setu_/send_setu/data_source.py +++ b/plugins/send_setu_/send_setu/data_source.py @@ -2,6 +2,7 @@ from configs.path_config import IMAGE_PATH, TEMP_PATH from utils.message_builder import image from services.log import logger from utils.image_utils import get_img_hash, compressed_image +from utils.utils import change_img_md5 from asyncpg.exceptions import UniqueViolationError from asyncio.exceptions import TimeoutError from typing import List, Optional @@ -111,6 +112,7 @@ async def search_online_setu( path_ / f"{index}.jpg", ) logger.info(f"下载 lolicon 图片 {url_} 成功, id:{index}") + change_img_md5(path_ / file_name) return image(path_ / file_name), index except TimeoutError: pass @@ -128,6 +130,7 @@ async def check_local_exists_or_download(setu_image: Setu) -> "MessageSegment, i path_ = r18_path if setu_image.is_r18 else path file = IMAGE_PATH / path_ / f"{setu_image.local_id}.jpg" if file.exists(): + change_img_md5(file) return image(f"{setu_image.local_id}.jpg", path_), 200 return await search_online_setu(setu_image.img_url, id_, path_)