fix(anime): '새 에피소드 없음'을 오류→성공 처리, 결과 포맷 확대 (120자/줄, 4000자)

This commit is contained in:
2026-03-20 12:31:24 +09:00
parent cc820fa180
commit 3bca0d1e64
2 changed files with 19 additions and 5 deletions

View File

@@ -149,12 +149,23 @@ async def handle_anime_message(
failures = [r for r in result if not r.success] failures = [r for r in result if not r.success]
lines = [] lines = []
for r in result: for r in result:
icon = "" if r.success else "" if r.success:
icon = ""
else:
icon = ""
name = r.anime.subject if r.anime else "?" name = r.anime.subject if r.anime else "?"
lines.append(f"{icon} {name}: {r.message[:60]}") msg = r.message or ""
# 제목에서 anime subject 중복 제거
if r.anime and msg.startswith(f"{r.anime.subject}: "):
msg = msg[len(f"{r.anime.subject}: "):]
line = f"{icon} **{name}**: {msg[:120]}"
if r.errors:
line += f"\n ⚠ {'; '.join(r.errors[:2])}"
lines.append(line)
desc = "\n".join(lines) if lines else "처리 완료"
embed = discord.Embed( embed = discord.Embed(
title=f"📥 일괄 다운로드 ({len(successes)}/{len(result)}건 성공)", title=f"📥 일괄 다운로드 ({len(successes)}/{len(result)}건 성공)",
description="\n".join(lines)[:2000] if lines else "처리 완료", description=desc[:4000],
color=0x2ECC71 if not failures else 0xF39C12, color=0x2ECC71 if not failures else 0xF39C12,
) )
await safe_send_embed(message.channel, embed) await safe_send_embed(message.channel, embed)

View File

@@ -1017,12 +1017,15 @@ class AnimePipeline:
if episode is not None: if episode is not None:
result.errors.append(f"{episode}화 토렌트를 찾지 못했습니다.") result.errors.append(f"{episode}화 토렌트를 찾지 못했습니다.")
elif required_group: elif required_group:
result.errors.append( result.message = (
f"{result.anime.subject}: "
f"새로 다운로드할 에피소드가 없습니다 " f"새로 다운로드할 에피소드가 없습니다 "
f"([{required_group}] 릴리스 기준)." f"([{required_group}] 릴리스 기준)."
) )
result.success = True
else: else:
result.errors.append("새로 다운로드할 에피소드가 없습니다.") result.message = f"{result.anime.subject}: 새로 다운로드할 에피소드가 없습니다."
result.success = True
return return
# 에피소드 순서대로 추가 # 에피소드 순서대로 추가