Skip to main content

Organize movies and tv-shows

Project description

me-mover

Me-mover is an application for organizing movies and tv-shows.

TV shows will be moved to [tv-show destination directory]/[show name]/[season directory].

Movies will be moved to [movie destination directory]/[movie name directory]

1. Install me-mover

pip

> pip install me-mover

2. Setup for development

> git clone https://github.com/Alecktos/me-mover.git
> cd me-mover

# create and activate virtual environment
> python -m venv venv
> source venv/bin/activate  # On Windows: venv\Scripts\activate

# install project locally for development
> pip install -e .[dev]

Run tests

> python -m unittest discover tests

3. Usage

By-name

Moves a movie or tv-show from a source directory by searching for its name.

> me-mover by-name {name} {source-dir-path} {show-destination-dir-path} {movie-destination-dir-path}

Example

> me-mover by-name "halt and catch fire" sourcedir media/sorted-tv-shows media/movies

If following files exist:
* `sourcedir/Halt.and.Catch.Fire.S02E08.mp4` 
* `sourcedir/Halt.and.Catch.Fire.S02E09.mp4` 

They will be moved to 
* `media/sorted-tv-shows/Halt And Catch Fire/Season 2/Halt.and.Catch.Fire.S02E08.mp4` 
* `media/sorted-tv-shows/Halt And Catch Fire/Season 2/Halt.and.Catch.Fire.S02E09.mp4`

By-path

Moves a movie or tv-show by its path.

> me-mover by-path {source-path} {show-destination-dir-path} {movie-destination-path}

Example

> me-mover by-path sourcefolder/Star.Wars.The.Clone.Wars.BluRay.1080p.x264.5.1.mp4 media/sorted-tv-shows media/movies

Movie will be moved to `media/movies/Star.Wars.The.Clone.Wars.BluRay.1080p.x264.5.1/Star.Wars.The.Clone.Wars.BluRay.1080p.x264.5.1.mp4`

> me-mover by-path sourcefolder/Vikings.S04E15.720p.mkv media/sorted-tv-shows media/movies

Episode will be moved to `media/sorted-tv-shows/Vikings/Season 4/Vikings.S04E15.720p.mkv`

Watch

Watches a directory and moves new files that are placed in it. Assuming that it's either a movie or tv-show.

> me-mover watch {source-dir-path} {show-destination-path} {movie-destination-path}

Example

> me-mover watch media/inbox media/sorted-tv-shows media/movies

When moving Vikings.S04E15.720p.mkv to media/inbox
It will be moved to media/sorted-tv-shows/Vikings/Season 4/Vikings.S04E15.720p.m

Commands

by-name                Moves all found episodes of specified tv-show. If matching movie all movies matching that name will be moved
  positional arguments:
    name                name of TV show or movie to move
    source              source directory to look for media in
    shows-destination   show destination directory
    movies-destination  movie destination directory

by-path                Moves a movie or tv-show episode.
  positional arguments:
    source              source path of movie or TV show to move
    shows-destination   show destination directory
    movies-destination  movie destination directory

watch                  Monitors changes in a specific directory.
  positional arguments:
    source                source directory to to watch for incoming TV shows and movies
    shows-destination     show destination directory
    movies-destination    movie destination directory
  optional arguments:
    --quit QUIT, -q QUIT  Number of seconds until exit

Subtitles

Subtitles of types .srt, .smi, .ssa, .ass, .vtt will be renamed to the name of the video being moved.

Misc

A parent directory will be created for each moved movie.

If the show name or season directory does not exist they will be created.

Requirements

Python 3.14

watchdog

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

me_mover-3.2.3.tar.gz (24.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

me_mover-3.2.3-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file me_mover-3.2.3.tar.gz.

File metadata

  • Download URL: me_mover-3.2.3.tar.gz
  • Upload date:
  • Size: 24.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for me_mover-3.2.3.tar.gz
Algorithm Hash digest
SHA256 44660310338b71bf790753de7cf03d991ce5a78b3d6f819e33455b7b64765cfa
MD5 bcb5e960805294d1c19bb613aad793cc
BLAKE2b-256 63f775aed10a95a1e44c3c3635e63aaf5a96a9ce91a8d38f80d0c0bd210f032c

See more details on using hashes here.

File details

Details for the file me_mover-3.2.3-py3-none-any.whl.

File metadata

  • Download URL: me_mover-3.2.3-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for me_mover-3.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 655cf53aff36f9955110c316cdcf4ca6c33654369180fae8b057a98ff96af078
MD5 922781b035f88cfd406ef1d57e504c02
BLAKE2b-256 f24be11cb99fdc27ea84d5ff479d60d51a1748978501842c3bb626a6b37d844f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page