The.ghost.detective.s01.e01-16.1080p.jio.web-dl... -

for filename in os.listdir(folder_path): # Match pattern: Show Name S01.E01-16 Quality Source match = re.search(r"(The.Ghost.Detective.)S01.E(\d{2})-(\d{2}).(.*)", filename)

Arjun realized the "JIO.WEB-DL" wasn't a source tag. It was a timestamp. Jio meant "live." She was still trapped in the server room, broadcasting her murder on an infinite loop. The.Ghost.Detective.S01.E01-16.1080p.JIO.WEB-DL...

if match: show = match.group(1).replace('.', ' ') # "The Ghost Detective " start_ep = int(match.group(2)) end_ep = int(match.group(3)) quality = match.group(4) # Create individual files for episodes 1 through 16 for ep_num in range(start_ep, end_ep + 1): new_name = f"{show.strip()} - S01E{ep_num:02d} - {quality}.mkv" print(f"Would rename: {filename} -> {new_name}") # os.rename(os.path.join(folder_path, filename), # os.path.join(folder_path, new_name)) Use this if the single file actually contains all 16 episodes concatenated. for filename in os

<?xml version="1.0" encoding="utf-8"?> <episodedetails> <title>Episodes 1-16 (Combined File)</title> <showtitle>The Ghost Detective</showtitle> <season>1</season> <episode>1</episode> <episode>2</episode> <!-- ... up to 16 --> <displayseason>1</displayseason> <displayepisode>1-16</displayepisode> <aired>2024-03-15</aired> <studio>JioCinema</studio> <videoaspect>1080p</videoaspect> <fileinfo> <streamdetails> <video> <codec>H264</codec> <aspect>16:9</aspect> <width>1920</width> <height>1080</height> </video> </streamdetails> </fileinfo> </episodedetails> Let me know, and I'll refine it further (e.g., exact episode timings, subtitle syncing, or a full review of the actual show). if match: show = match

Detective Arjun wiped the rain from his collar as the screen flickered. The file labeled The.Ghost.Detective.S01.E01-16.1080p.JIO.WEB-DL wasn't just a corrupted download—it was a cry for help.