diff --git a/frontends/wechatapp.py b/frontends/wechatapp.py index 301f10c62..e56c9181f 100644 --- a/frontends/wechatapp.py +++ b/frontends/wechatapp.py @@ -284,7 +284,7 @@ def _dl_media(items): if sub.get('media', {}).get('aes_key') else bytes.fromhex(ak)) ct = requests.get(f'{CDN_BASE}/download?encrypted_query_param={quote(eq)}', headers={'User-Agent': UA}, timeout=60).content pt = AES.new(aes_key, AES.MODE_ECB).decrypt(ct); pt = pt[:-pt[-1]] - fname = sub.get('file_name') or f'{uuid.uuid4().hex[:8]}{ext or ".bin"}' + fname = os.path.basename(sub.get('file_name') or '') or f'{uuid.uuid4().hex[:8]}{ext or ".bin"}' p = os.path.join(_TEMP_DIR, fname); open(p, 'wb').write(pt) paths.append(p); print(f'[WX] media saved: {fname}', file=sys.__stdout__) except Exception as e: