Merge branch 'refactor' of github.com:KevinMidboe/seasonedParser into refactor

This commit is contained in:
2018-09-16 15:25:16 +02:00
2 changed files with 12 additions and 7 deletions

View File

@@ -22,9 +22,6 @@ from utils import sanitize, refine
logging.basicConfig(filename=env.logfile, level=logging.INFO)
#: Supported archive extensions
ARCHIVE_EXTENSIONS = ('.rar',)
def search_external_subtitles(path, directory=None):
dirpath, filename = os.path.split(path)
dirpath = dirpath or '.'
@@ -128,7 +125,8 @@ def scan_videos(path):
# scan for videos
for filename in filenames:
# filter on videos and archives
if not (filename.endswith(VIDEO_EXTENSIONS) or filename.endswith(ARCHIVE_EXTENSIONS)):
if not (filename.endswith(VIDEO_EXTENSIONS)):
logging.debug('Skipping non-video file %s', filename)
continue
# skip hidden files

View File

@@ -7,7 +7,7 @@ import re
import struct
from babelfish import Error as BabelfishError, Language
from enzyme import MKV
from enzyme import MalformedMKVError, MKV
def sanitize(string, ignore_characters=None):
"""Sanitize a string to strip special characters.
@@ -58,7 +58,14 @@ def refine(video, embedded_subtitles=True, **kwargs):
extension = os.path.splitext(video.name)[1]
if extension == '.mkv':
with open(video.name, 'rb') as f:
mkv = MKV(f)
try:
mkv = MKV(f)
except MalformedMKVError:
logging.error('Failed to parse mkv, malformed file')
return
except KeyError:
logging.error('Key error while opening file, uncompatible mkv container')
return
# main video track
if mkv.video_tracks:
@@ -125,4 +132,4 @@ def refine(video, embedded_subtitles=True, **kwargs):
else:
logging.debug('MKV has no subtitle track')
else:
logging.debug('Unsupported video extension %s', extension)
logging.debug('Unsupported video extension %s', extension)