Fix TheTVDB matching for 04x01 filenames and add all-seasons mode.
Parse NxNN and SxxExx layouts, match across every season when season is 0, and rewrite season plus episode numbers. Co-authored-by: Cursor <[email protected]>
This commit is contained in:
+9
-5
@@ -9,7 +9,7 @@ from dataclasses import dataclass, field
|
||||
from pathlib import Path
|
||||
from typing import List, Optional
|
||||
|
||||
from .episode_match import rewrite_episode_number
|
||||
from .episode_match import rewrite_episode_stem, EpisodeTarget, _coerce_target, parse_episode_stem
|
||||
|
||||
|
||||
@dataclass
|
||||
@@ -279,12 +279,16 @@ class TvdbEpisodeRenumberRule(Rule):
|
||||
) -> tuple[str, str]:
|
||||
if not self.episode_mapping or original_name is None:
|
||||
return stem, ext
|
||||
new_ep = self.episode_mapping.get(original_name)
|
||||
if new_ep is None:
|
||||
target_raw = self.episode_mapping.get(original_name)
|
||||
if target_raw is None:
|
||||
return stem, ext
|
||||
new_stem = rewrite_episode_number(
|
||||
parsed = parse_episode_stem(stem, self.pattern)
|
||||
if not parsed:
|
||||
return stem, ext
|
||||
target = _coerce_target(target_raw, parsed)
|
||||
new_stem = rewrite_episode_stem(
|
||||
stem,
|
||||
int(new_ep),
|
||||
target,
|
||||
padding=self.padding,
|
||||
pattern=self.pattern,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user