{"id":27118059,"url":"https://github.com/royborgen/jelly_media_admin","last_synced_at":"2025-04-07T06:50:04.091Z","repository":{"id":227335130,"uuid":"771137957","full_name":"royborgen/jelly_media_admin","owner":"royborgen","description":"Script to manage and organize mediafiles for Jellyfin. The script takes a download folder as input","archived":false,"fork":false,"pushed_at":"2024-11-20T20:43:55.000Z","size":49,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-20T21:35:23.481Z","etag":null,"topics":["jellyfin"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/royborgen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-12T18:51:47.000Z","updated_at":"2024-11-20T20:43:59.000Z","dependencies_parsed_at":"2024-03-12T19:58:49.207Z","dependency_job_id":"01bc5905-371f-4dd6-9e16-fd8f78f7c0b0","html_url":"https://github.com/royborgen/jelly_media_admin","commit_stats":null,"previous_names":["royborgen/jelly_media_admin"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/royborgen%2Fjelly_media_admin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/royborgen%2Fjelly_media_admin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/royborgen%2Fjelly_media_admin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/royborgen%2Fjelly_media_admin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/royborgen","download_url":"https://codeload.github.com/royborgen/jelly_media_admin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247608149,"owners_count":20965950,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["jellyfin"],"created_at":"2025-04-07T06:50:03.463Z","updated_at":"2025-04-07T06:50:04.066Z","avatar_url":"https://github.com/royborgen.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Jellyfin Media Admin\nThis Python script streamlines media management within Jellyfin by automating the organization of media files. Leveraging IMDb, it accurately identifies and categorizes media files (such as Movies, TV Shows, Children's Movies, or Children's Shows), ensuring they are organized in a Jellyfin-compatible structure.\n\n\n## Key Features\n- **Automated Unarchiving:** Extracts media files from archives, preparing them for use within Jellyfin.\n- **Symbolic Link Creation:** Generates symbolic links for extracted media, placing them in the appropriate folder structure in Jellyfin's media library for accessible and organized media.\n- **IMDb Integration:** Searches IMDb to efficiently categorize media into the correct folder and type. It prompts the user for input if the media type cannot be determined automatically, ensuring accurate classification.\n- **Jellyfin library support**: Supports Movies and shows, organized in Jellyfin friendly folders. Example: A Fantastic Movie (2024), A Fantastic Series (2024)\\Season 01\\ \n\nThis script is the initial version, with plans to refine and expand its capabilities based on user feedback and evolving needs.\n\n\n## Note\nOptimized for Linux-based systems due to native support for symbolic links. Future updates may include Windows support by adapting the script to create shortcuts, thus improving cross-platform utility.\n\n\n## Usage\nExecute the script by running `jelly_media_admin.py`.\n\n\n## Configuration: `media.conf`\nThis configuration file specifies the paths to various media types in Jellyfin, supporting four default media types: Movies, Shows, Kids Movies, and Kids Shows.\nIf the file does not exist, it is created with default values. \n\n```\n[media]\nkidsmovies = /media/storage/media/KidsMovies/\nkidsshows = /media/storage/media/KidsShows/\nmovies = /media/storage/media/Movies/\nshows = /media/storage/media/Shows/\n```\n\n\n## Example of script output\n```\nNFO-file found\nProcessing file: /media/storage/downloads/A.Fantastic.Movie.2024.1080p.BluRay.x264-hacker.nfo\nIMDb ID found in A.Fantastic.Movie.2024.1080p.BluRay.x264-hacker.nfo: ['tt012456']\nFolder contains RAR archive: A.Fantastic.Movie.2024.1080p.BluRay.x264-hacker.rar\nExtracting archive to /media/storage/media/Movies/'A Fantastic Movie (2024)'\nExtracting A.Fantastic.Movie.2024.1080p.BluRay.x264-hacker.mkv to /media/storage/media/Movies/A Fantastic Movie (2024)/A.Fantastic.Movie.2024.1080p.BluRay.x264-hacker.mkv\nProgress: 100%\nArchive '/media/storage/downloads/A.Fantastic.Movie.2024.1080p.BluRay.x264-hacker/A.Fantastic.Movie.2024.1080p.BluRay.x264-hacker.rar' successfully extracted to '/media/storage/media/Movies/A Fantastic Movie (2024)'.\n```\n\n\n## Requirements\n- Python 3 \n- requests library installed \n- sys library installed \n- json library installed\n- os library installed\n- configparser library installed\n- re library installed\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froyborgen%2Fjelly_media_admin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froyborgen%2Fjelly_media_admin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froyborgen%2Fjelly_media_admin/lists"}