From 80746252c032fc238f2170e3565684793c56694b Mon Sep 17 00:00:00 2001 From: KevinMidboe Date: Tue, 27 Jun 2017 15:22:02 -0600 Subject: [PATCH] Added excepts to all move and delete, so it can be run mulitple times and see no downside to having it run and logging it if not found. Also think I fixed a bug that renamed the folder that would be deleted, not the new folder --- moveSeasoned.py | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/moveSeasoned.py b/moveSeasoned.py index caaca70..de71619 100755 --- a/moveSeasoned.py +++ b/moveSeasoned.py @@ -3,9 +3,10 @@ # @Author: KevinMidboe # @Date: 2017-04-12 23:27:51 # @Last Modified by: KevinMidboe -# @Last Modified time: 2017-06-12 20:28:03 +# @Last Modified time: 2017-06-27 15:15:50 import sys, sqlite3, json, os +import logging import env_variables as env class episode(object): @@ -51,16 +52,35 @@ def moveStray(strayId): ep = episode(strayId) for item in ep.video_files: - os.rename(ep.typeDir('parent', mergeItem=item[0]), ep.typeDir('episode', mergeItem=item[1], create=True)) + try: + old_dir = ep.typeDir('parent', mergeItem=item[0]) + new_dir = ep.typeDir('episode', mergeItem=item[1], create=True) + os.rename(old_dir, new_dir) + except FileNotFoundError: + logging.warning(old_dir + ' does not exits, cannot be moved.') for item in ep.subtitles: - os.rename(ep.typeDir('parent', mergeItem=item[0]), ep.typeDir('episode', mergeItem=item[1], create=True)) + try: + old_dir = ep.typeDir('parent', mergeItem=item[0]) + new_dir = ep.typeDir('episode', mergeItem=item[1], create=True) + os.rename(old_dir, new_dir) + except FileNotFoundError: + logging.warning(old_dir + ' does not exits, cannot be moved.') for item in ep.trash: - os.remove(ep.typeDir('parent', mergeItem=item)) + try: + os.remove(ep.typeDir('parent', mergeItem=item)) + except FileNotFoundError: + logging.warning(ep.typeDir('parent', mergeItem=item) + 'does not exist, cannot be removed.') - fix_ownership(ep.typeDir('parent')) + fix_ownership(ep.typeDir('episode')) os.rmdir(ep.typeDir('parent')) if __name__ == '__main__': - moveStray(sys.argv[-1]) \ No newline at end of file + if (os.path.exists(env.logfile)): + logging.basicConfig(filename=env.logfile, level=logging.INFO) + else: + print('Logfile could not be found at ' + env.logfile + '. Verifiy presence or disable logging in config.') + + moveStray(sys.argv[-1]) +