From 3889b760c31c1e775b18b51c3df25c4bf72cec90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kjist=C3=B3f?= Date: Sun, 15 Jan 2017 20:18:07 +0100 Subject: [PATCH] further improved handling of filenames --- coub-dl.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/coub-dl.py b/coub-dl.py index ec38c71..c68e140 100644 --- a/coub-dl.py +++ b/coub-dl.py @@ -2,9 +2,14 @@ from subprocess import call, Popen, PIPE from os import listdir from re import match from sys import argv +from enum import Enum +class Stream(Enum): + AUDIO = 1 + VIDEO = 2 + def getCmdStdErr(command): process = Popen(command, stderr=PIPE, stdout=PIPE) out, err = process.communicate() @@ -19,16 +24,16 @@ def getDuration(ffprobe_output): return duration -argv.append('https://coub.com/view/aeeuu') +argv.append('https://coub.com/view/aeeuu') # TODO: remove debug line -FILES = {'AUDIO': 'audio', 'VIDEO': 'video'} +FILES = {Stream.AUDIO: 'audio', Stream.VIDEO: 'video'} URL = argv[1] if len(argv) > 0 else '' # youtube-dl error message will be shown if '' call(('/usr/bin/env', 'youtube-dl', '--extract-audio', - '--output', '{}.%(ext)s'.format(FILES['AUDIO']), + '--output', '{}.%(ext)s'.format(FILES[Stream.AUDIO]), URL)) -call(('/usr/bin/env', 'youtube-dl', '--output', '{}.%(ext)s'.format(FILES['VIDEO']), +call(('/usr/bin/env', 'youtube-dl', '--output', '{}.%(ext)s'.format(FILES[Stream.VIDEO]), URL)) for file in listdir(): @@ -36,8 +41,8 @@ for file in listdir(): if match('^{}.*'.format(FILES[filename]), file): FILES[filename] = file -audioLen = getDuration(getCmdStdErr(('/usr/bin/env', 'ffprobe', FILES['AUDIO']))) -videoLen = getDuration(getCmdStdErr(('/usr/bin/env', 'ffprobe', FILES['VIDEO']))) +audioLen = getDuration(getCmdStdErr(('/usr/bin/env', 'ffprobe', FILES[Stream.AUDIO]))) +videoLen = getDuration(getCmdStdErr(('/usr/bin/env', 'ffprobe', FILES[Stream.VIDEO]))) print(audioLen) print(videoLen)