Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import re
- from shutil import copyfile
- reg_book_id = re.compile('book-(.+)\)')
- sorted_dir = os.path.join(os.getcwd(), 'sorted')
- books_without_ids_dir = os.path.join(sorted_dir, 'books')
- def prettify_name(filename):
- _, file_extension = os.path.splitext(filename)
- name = filename.split('_')[0]
- pretty_name = ' '.join([word.capitalize() for word in name.split('-')])
- return f'{pretty_name}{file_extension}'
- print('Current dir: ', os.getcwd())
- for filename in os.listdir('.'):
- if filename == '.' or filename == '..' or filename == __file__:
- continue
- match = reg_book_id.search(filename)
- pretty_filename = prettify_name(filename)
- source = os.path.join(os.getcwd(), filename)
- try:
- book_id = match.groups()[0]
- except AttributeError:
- print('Could not extract book id from: ' + filename)
- if not os.path.exists(books_without_ids_dir):
- print('Creating ' + books_without_ids_dir)
- os.makedirs(books_without_ids_dir)
- destination = os.path.join(books_without_ids_dir, pretty_filename)
- print(f'src: {source}\ndst: {destination}\n\n')
- copyfile(source, destination)
- continue
- book_dir = os.path.join(sorted_dir, book_id)
- if not os.path.exists(book_dir):
- os.makedirs(book_dir)
- destination = os.path.join(book_dir, pretty_filename)
- print(f'src: {source}\ndst: {destination}\n\n')
- copyfile(source, destination)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement