Code: Select all
#!/usr/bin/python
import sys, os, re, urllib2, shutil
full_path = sys.argv[1:2][0]
job_name = sys.argv[3:4][0]
category = sys.argv[5:6][0]
#full_path = "/share/Download/sabnzbd/complete/Movie.Name.2015.BDRip.x264-Group"
#job_name = "Movie.Name.2015.BDRip.x264-Group"
#category = "movie"
ext_whitelist = ["sub","idx","srt"]
plex_host = "localhost:32400"
destination_folder = "/share/Multimedia/Videos/Movies"
plex_library = 1
if category == "kids movie":
destination_folder = "/share/Multimedia/Videos/Kids"
plex_library = 3
# Begin Find Largest File
largest_file = ("", -1, "")
subtitles = []
def search(dir):
global largest_file
for item in os.listdir(dir):
item = dir + "/" + item
if os.path.isdir(item):
search(item)
else:
itemsize = os.path.getsize(item)
itemext = os.path.splitext(item)[1][1:]
if itemext in ext_whitelist:
subtitles.append(item)
if itemsize > largest_file[1]:
largest_file = (item, itemsize, itemext)
search(full_path)
if largest_file[1] == -1:
sys.exit()
# End Find Largest File
# Determine new file name
find_year = re.search("\d\d\d\d", job_name).start()
movie_name = job_name[0:find_year-1].replace("."," ")
movie_year = job_name[find_year:find_year+4]
new_name = movie_name + " (" + movie_year + ")"
new_file_name = new_name + "." + largest_file[2]
# Rename/move largest file
os.rename(largest_file[0], destination_folder + "/" + new_file_name)
# Rename/move subtitle files
for s in subtitles:
os.rename(s, destination_folder + "/" + new_name + "." + os.path.splitext(s)[1][1:])
# Delete remaining files
shutil.rmtree(full_path)
# Plex Library Scan
urllib2.urlopen("http://" + plex_host + "/library/sections/" + `plex_library` + "/refresh").read()