docgonzo2015 / movie-file-fixer

An application for formatting poorly formatted movie filenames, adding a movie poster from IMDb, and adding subtitles based on an md5 hash of the file.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Current Version on PyPI PyPI Format PyPI Status Supported Python Versions Build Coverage License Code style: black GitHub Last Commit

movie-file-fixer

Given a directory of poorly formatted movie files, movie-file-fixer will create a beautifully formatted directory of films folders, complete with posters, subtitles, and IMDb metadata.

Algorithm

Given a directory string,

  1. folderize() - Prepare the directory space.

    • Place all single files (except contents.json and errors.json) into folders using the file name. - [Folderizer]

    • Pull all subtitle files out of subs folders if they exist.

  2. cleanup() - Folder cleanup.

    • Remove non-movie files, based on a list of "bad" extensions (i.e., .nfo, .txt, etc.) - [FileRemover]
  3. format() - Format folders, movie files, and relevant metafiles based on IMDb movie titles.

    • Rename the movie file and folder (i.e., <movie_title> [<year_of_release>]) - [Formatter]

    • Create a contents.json file to store the metadata, including poster URLs.

    • Create an errors.json file to contain any files or folders that had issues being formatted.

  4. get_posters() - Download the movie poster and name the file poster.<extension> (where <extension> is the original extension of the poster file) - [PosterFinder]

  5. get_subtitles() - Download the subtitles using SubDb (http://thesubdb.com/) and an md5 hash of the movie file and name the file <movie_title> [<year_of_release>].srt - [SubtitleFinder]

About

An application for formatting poorly formatted movie filenames, adding a movie poster from IMDb, and adding subtitles based on an md5 hash of the file.

License:MIT License


Languages

Language:Python 99.9%Language:Shell 0.1%