From d3ab5f910d74be72a1192ddccf950c27eaecd270 Mon Sep 17 00:00:00 2001 From: Folltoshe Date: Sun, 17 Nov 2024 22:34:14 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=BD=BF=E7=94=A8redi?= =?UTF-8?q?s=E7=BC=93=E5=AD=98=E7=9A=84=E6=97=B6=E5=80=99=E8=BF=87?= =?UTF-8?q?=E6=9C=9F=E6=97=B6=E9=97=B4=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/Httpx.py | 10 ++++++---- modules/__init__.py | 15 ++++++++------- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/common/Httpx.py b/common/Httpx.py index 4496dee..352e843 100644 --- a/common/Httpx.py +++ b/common/Httpx.py @@ -175,11 +175,12 @@ def request(url: str, options={}) -> requests.Response: # 缓存写入 if cache_info and cache_info != "no-cache": cache_data = pickle.dumps(req) - expire_time = (cache_info if isinstance(cache_info, int) else 3600) + int(time.time()) + expire_time = cache_info if isinstance(cache_info, int) else 3600 + expire_at = int((time.time) + expire_time) config.updateCache( "httpx", cache_key, - {"expire": True, "time": expire_time, "data": utils.createBase64Encode(cache_data)}, + {"expire": True, "time": expire_at, "data": utils.createBase64Encode(cache_data)}, expire_time, ) logger.debug("缓存已更新: " + url) @@ -331,11 +332,12 @@ async def AsyncRequest(url, options={}) -> ClientResponse: # 缓存写入 if cache_info and cache_info != "no-cache": cache_data = pickle.dumps(req) - expire_time = (cache_info if isinstance(cache_info, int) else 3600) + int(time.time()) + expire_time = cache_info if isinstance(cache_info, int) else 3600 + expire_at = int((time.time) + expire_time) config.updateCache( "httpx_async", cache_key, - {"expire": True, "time": expire_time, "data": utils.createBase64Encode(cache_data)}, + {"expire": True, "time": expire_at, "data": utils.createBase64Encode(cache_data)}, expire_time, ) logger.debug("缓存已更新: " + url) diff --git a/modules/__init__.py b/modules/__init__.py index 6ab19a2..a1e8e12 100644 --- a/modules/__init__.py +++ b/modules/__init__.py @@ -95,18 +95,18 @@ async def url(source, songId, quality, query={}): logger.info(f'获取{source}_{songId}_{quality}成功,URL:{result["url"]}') canExpire = sourceExpirationTime[source]["expire"] - expireTime = sourceExpirationTime[source]["time"] + int(time.time()) - canUseTime = int(expireTime - sourceExpirationTime[source]["time"] * 0.25) + expireTime = int(sourceExpirationTime[source]["time"] * 0.75) + expireAt = int(expireTime + time.time()) config.updateCache( "urls", f"{source}_{songId}_{quality}", { "expire": canExpire, # 取有效期的75%作为链接可用时长 - "time": canUseTime, + "time": expireAt, "url": result["url"], }, - canUseTime if canExpire else None, + expireTime if canExpire else None, ) logger.debug(f'缓存已更新:{source}_{songId}_{quality}, URL:{result["url"]}, expire: {expireTime}') @@ -121,7 +121,7 @@ async def url(source, songId, quality, query={}): "result": result["quality"], }, "expire": { - "time": expireTime if canExpire else None, + "time": expireAt if canExpire else None, "canExpire": canExpire, }, }, @@ -149,13 +149,14 @@ async def lyric(source, songId, _, query): } try: result = await func(songId) - expireTime = int(time.time() + (86400 * 3)) + expireTime = 86400 * 3 + expireAt = int(time.time() + expireTime) config.updateCache( "lyric", f"{source}_{songId}", { "data": result, - "time": expireTime, # 歌词缓存3天 + "time": expireAt, # 歌词缓存3天 "expire": True, }, expireTime,