368d6fafea
Code backup
47 lines
1.6 KiB
Python
47 lines
1.6 KiB
Python
import os
|
|
import argparse
|
|
|
|
from converter import convert_heic_to_jpeg, convert_heic_file
|
|
|
|
|
|
def parse_args():
|
|
"""
|
|
Parse command line arguments
|
|
|
|
:return: the parsed arguments
|
|
"""
|
|
parser = argparse.ArgumentParser(description='Convert HEIC files to JPEG')
|
|
parser.add_argument('path', help='the path to the file or directory to convert', default='./', nargs='?')
|
|
parser.add_argument('-r', '--remove', help='Remove converted HEIC Files', action='store_true')
|
|
parser.add_argument('-o', '--overwrite', help='Overwrite existing JPEG files', action='store_true')
|
|
parser.add_argument('--not-recursive', help='Do not search subdirectories', action='store_true')
|
|
parser.add_argument('--skip-prompt', help='Skip the prompt at the end', action='store_true')
|
|
|
|
return parser.parse_args()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
path = os.path.abspath(os.getcwd())
|
|
|
|
args = parse_args()
|
|
if args.path:
|
|
path = args.path
|
|
|
|
path = os.path.abspath(path)
|
|
|
|
if os.path.isdir(path):
|
|
print(f'Converting HEIC files in directory {path}')
|
|
converted = convert_heic_to_jpeg(path, not args.not_recursive, args.overwrite, args.remove)
|
|
print(f'\nSuccessfully converted {len(converted)} files')
|
|
|
|
elif os.path.isfile(path):
|
|
print(f'Converting HEIC file {path}')
|
|
convert_heic_file(path, os.path.splitext(path)[0] + ".jpg", args.overwrite, args.remove)
|
|
print(f'\nSuccessfully converted file')
|
|
|
|
else:
|
|
print(f'Dont know what to do with {path}')
|
|
|
|
if not args.skip_prompt:
|
|
input("Press Enter to continue...")
|