From 72b2fb796737e52b296dc8148fefd6c833952d1c Mon Sep 17 00:00:00 2001 From: clinton-hall Date: Sat, 14 Jun 2014 11:58:31 +0930 Subject: [PATCH] more charreplace. #424 --- nzbToMedia.py | 4 +++- nzbtomedia/autoProcess/autoProcessMovie.py | 5 ++++- nzbtomedia/autoProcess/autoProcessTV.py | 16 ++++++++++++++-- 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/nzbToMedia.py b/nzbToMedia.py index f0c1231b..8000edd2 100755 --- a/nzbToMedia.py +++ b/nzbToMedia.py @@ -345,7 +345,7 @@ from nzbtomedia.autoProcess.autoProcessGames import autoProcessGames from nzbtomedia.autoProcess.autoProcessMovie import autoProcessMovie from nzbtomedia.autoProcess.autoProcessMusic import autoProcessMusic from nzbtomedia.autoProcess.autoProcessTV import autoProcessTV -from nzbtomedia.nzbToMediaUtil import getDirs, extractFiles, cleanDir, update_downloadInfoStatus, get_downloadInfo, CharReplace +from nzbtomedia.nzbToMediaUtil import getDirs, extractFiles, cleanDir, update_downloadInfoStatus, get_downloadInfo, CharReplace, convert_to_ascii from nzbtomedia import logger, nzbToMediaDB # post-processing @@ -410,6 +410,8 @@ def process(inputDirectory, inputName=None, status=0, clientAgent='manual', down logger.error('Remote Path %s is not valid for %s:%s Please set this to either 0 to disable or 1 to enable!' % ( section[inputCategory]['remote_path'], sectionName, inputCategory)) + inputName, inputDirectory = convert_to_ascii(inputName, inputDirectory) + if extract == 1: logger.debug('Checking for archives to extract in directory: %s' % (inputDirectory)) extractFiles(inputDirectory) diff --git a/nzbtomedia/autoProcess/autoProcessMovie.py b/nzbtomedia/autoProcess/autoProcessMovie.py index 1adf0495..3d4f0ca9 100644 --- a/nzbtomedia/autoProcess/autoProcessMovie.py +++ b/nzbtomedia/autoProcess/autoProcessMovie.py @@ -170,8 +170,11 @@ class autoProcessMovie: os.rename(video, video2) if num_files > 0 and good_files == num_files: if status: - logger.info("Status shown as failed from Downloader, but %s valid video files found. Setting as successful." % (str(good_files)), section) + logger.info("Status shown as failed from Downloader, but %s valid video files found. Setting as success." % (str(good_files)), section) status = 0 + elif num_files > 0 and good_files < num_files: + logger.info("Status shown as success from Downloader, but corrupt video files found. Setting as failed.", section) + status = 1 elif clientAgent == "manual": logger.warning("No media files found in directory %s to manually process." % (dirName), section) return 0 # Success (as far as this script is concerned) diff --git a/nzbtomedia/autoProcess/autoProcessTV.py b/nzbtomedia/autoProcess/autoProcessTV.py index 3a4dc7f8..2ba68d83 100644 --- a/nzbtomedia/autoProcess/autoProcessTV.py +++ b/nzbtomedia/autoProcess/autoProcessTV.py @@ -87,8 +87,19 @@ class autoProcessTV: # Check video files for corruption status = int(failed) - for video in listMediaFiles(dirName): - if not transcoder.isVideoGood(video): + good_files = 0 + num_files = 0 + for video in listMediaFiles(dirName, media=True, audio=False, meta=False, archives=False): + num_files += 1 + if transcoder.isVideoGood(video): + good_files += 1 + if num_files > 0 + if good_files == num_files and not status == 0: + logger.info('Found Valid Videos. Setting status Success') + status = 0 + failed = 0 + if good_files < num_files and status == 0: + logger.info('Found corrupt videos. Setting status Failed') status = 1 failed = 1 @@ -111,6 +122,7 @@ class autoProcessTV: if transcoder.isVideoGood(video): good_files += 1 if num_files > 0 and good_files == num_files: + logger.info('Found Valid Videos. Setting status Success') status = 0 failed = 0