Skip to content

Instantly share code, notes, and snippets.

@lukaville
Created October 2, 2016 20:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lukaville/8a7475999fcf9813aabfa93b0e60c0e1 to your computer and use it in GitHub Desktop.
Save lukaville/8a7475999fcf9813aabfa93b0e60c0e1 to your computer and use it in GitHub Desktop.
Copies subtitles from directory with maximum number of subtitles
#!/usr/bin/python3
import glob
import os
import shutil
from operator import itemgetter
SUBTITLE_EXTENSIONS = ('.srt', '.ass')
def count_subtitles(directory):
return sum([file.endswith(SUBTITLE_EXTENSIONS) for file in os.listdir(directory)])
def copy_subtitles():
subtitle_directories = []
for root, subdirs, files in os.walk('.'):
for directory in subdirs:
directory = os.path.join(root, directory)
if not os.path.isfile(directory):
subtitle_count = count_subtitles(directory)
if not subtitle_count == 0:
subtitle_directories.append({
'directory': directory,
'count': subtitle_count
})
if len(subtitle_directories) > 0:
subtitle_directories.sort(key=itemgetter('count'), reverse=True)
subtitle_directory = subtitle_directories[0]
for file in glob.glob(subtitle_directory['directory'] + '/*'):
shutil.copy(file, '.')
print('Copying ' + file)
if __name__ == '__main__':
copy_subtitles()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment