Initial Commit
This commit is contained in:
		
						commit
						629e7a62cc
					
				
							
								
								
									
										10
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,10 @@
 | 
			
		|||
# Vim
 | 
			
		||||
*.swp
 | 
			
		||||
*.swo
 | 
			
		||||
 | 
			
		||||
# Single character files (used for testing)
 | 
			
		||||
?.py
 | 
			
		||||
?.sh
 | 
			
		||||
 | 
			
		||||
__pycache__
 | 
			
		||||
apiconfig.py
 | 
			
		||||
							
								
								
									
										2
									
								
								apiconfig-default.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								apiconfig-default.py
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,2 @@
 | 
			
		|||
url = 'http://radarr.host.ip:port'
 | 
			
		||||
apikey = 'yourradarrapikey'
 | 
			
		||||
							
								
								
									
										3
									
								
								backup
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										3
									
								
								backup
									
									
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,3 @@
 | 
			
		|||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
rsync -a --delete /home/junior/PlexDev /backup/
 | 
			
		||||
							
								
								
									
										2
									
								
								radarr/apiconfig-default.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								radarr/apiconfig-default.py
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,2 @@
 | 
			
		|||
url = 'http://radarr.host.ip:port'
 | 
			
		||||
apikey = 'yourradarrapikey'
 | 
			
		||||
							
								
								
									
										25
									
								
								radarr/unmonitor.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								radarr/unmonitor.py
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,25 @@
 | 
			
		|||
import json
 | 
			
		||||
import os
 | 
			
		||||
from pyarr import RadarrAPI
 | 
			
		||||
import sys
 | 
			
		||||
 | 
			
		||||
try:
 | 
			
		||||
    import apiconfig
 | 
			
		||||
except:
 | 
			
		||||
    print("Error!")
 | 
			
		||||
    print("  \"apiconfig.py\" seems to be missing!")
 | 
			
		||||
    print("  Have you copied the default config to \"apiconfig.py\" and made appropriate edits?")
 | 
			
		||||
    print()
 | 
			
		||||
    sys.exit()
 | 
			
		||||
 | 
			
		||||
radarr = RadarrAPI(apiconfig.url, apiconfig.apikey)
 | 
			
		||||
 | 
			
		||||
movies = radarr.get_movie()
 | 
			
		||||
 | 
			
		||||
for movie in movies:
 | 
			
		||||
    if movie['monitored'] == True and movie['hasFile'] == True:
 | 
			
		||||
        print(f"Movie \"{movie['title']} id={movie['id']} has a file but is still monitored!")
 | 
			
		||||
        data = {"movieIds":[movie['id']], "monitored": False}
 | 
			
		||||
        radarr.upd_movies(data)
 | 
			
		||||
 | 
			
		||||
# vim: set ts=4 sw=4 et:
 | 
			
		||||
							
								
								
									
										44
									
								
								updatecoll.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								updatecoll.py
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,44 @@
 | 
			
		|||
from plexapi.myplex import MyPlexAccount
 | 
			
		||||
from plexapi.server import PlexServer
 | 
			
		||||
from plexapi.media import Media
 | 
			
		||||
from pprint import pprint
 | 
			
		||||
import sys
 | 
			
		||||
 | 
			
		||||
PLEX_URL = 'http://localhost:32400'
 | 
			
		||||
PLEX_TOKEN = 'h3ffbZ4pDxgNtGuUDFys'
 | 
			
		||||
PATH_FOLDER = '/videos/'
 | 
			
		||||
LIBRARY = 'Junior Movies'
 | 
			
		||||
 | 
			
		||||
colmap = {
 | 
			
		||||
        "Action-Adventure": "Action/Adventure",
 | 
			
		||||
        "Animated": "Animated",
 | 
			
		||||
        "Christmas": "Christmas",
 | 
			
		||||
        "Comedy-Romantic": "Comedy/Romance",
 | 
			
		||||
        "Documentary": "Documentary",
 | 
			
		||||
        "Drama": "Drama",
 | 
			
		||||
        "Imports": "Imports",
 | 
			
		||||
        "Scary": "Scary",
 | 
			
		||||
        "Sci-Fi": "Sci-Fi"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
colcontents = {}
 | 
			
		||||
for col in colmap.values():
 | 
			
		||||
    colcontents[col] = []
 | 
			
		||||
 | 
			
		||||
plex = PlexServer(PLEX_URL, PLEX_TOKEN)
 | 
			
		||||
 | 
			
		||||
print("Building collection contents lists...")
 | 
			
		||||
for col in colmap.values():
 | 
			
		||||
    videos = plex.library.section(LIBRARY).search(collection=col)
 | 
			
		||||
    for video in videos: colcontents[col].append(video.title)
 | 
			
		||||
 | 
			
		||||
print("Checking collections for each movie...")
 | 
			
		||||
videos = plex.library.section(LIBRARY).all()
 | 
			
		||||
for video in videos:
 | 
			
		||||
    file = None
 | 
			
		||||
    for part in video.iterParts():
 | 
			
		||||
        if file == None: file = part.file
 | 
			
		||||
    [top_folder, junk] = file[len(PATH_FOLDER):].split("/", 1)
 | 
			
		||||
    if video.title not in colcontents[colmap[top_folder]]:
 | 
			
		||||
        print(f"Movie {video.title} is missing collection {colmap[top_folder]}")
 | 
			
		||||
        video.addCollection(colmap[top_folder])
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user