From 8af03f9c841bf35b4da4ef50dbdba0f9e011f3e9 Mon Sep 17 00:00:00 2001 From: dnslin Date: Sat, 13 Dec 2025 12:23:48 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E9=A2=91=E9=81=93=E4=B9=8B=E5=90=8E=20=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/telegram/handlers.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/telegram/handlers.py b/src/telegram/handlers.py index eb141ac..4bac3b5 100644 --- a/src/telegram/handlers.py +++ b/src/telegram/handlers.py @@ -1386,6 +1386,7 @@ class Aria2BotAPI: async def _upload_to_channel_manual(self, query, update: Update, context: ContextTypes.DEFAULT_TYPE, gid: str) -> None: """手动上传到频道""" + import shutil from pathlib import Path client = self._get_telegram_channel_client(context.bot) @@ -1419,7 +1420,17 @@ class Aria2BotAPI: await query.edit_message_text(f"📢 正在发送到频道: {task.name}") success, result = await client.upload_file(local_path) if success: - await query.edit_message_text(f"✅ 已发送到频道: {task.name}") + result_text = f"✅ 已发送到频道: {task.name}" + if self._telegram_channel_config and self._telegram_channel_config.delete_after_upload: + try: + if local_path.is_dir(): + shutil.rmtree(local_path) + else: + local_path.unlink() + result_text += "\n🗑️ 本地文件已删除" + except Exception as e: + result_text += f"\n⚠️ 删除本地文件失败: {e}" + await query.edit_message_text(result_text) else: await query.edit_message_text(f"❌ 发送失败: {result}")