-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup_panos.py
executable file
·48 lines (35 loc) · 1.48 KB
/
setup_panos.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#! /usr/bin/env python
# -*- coding: utf-8 -*-
import logging
import logger
log = logging.getLogger(__name__)
import argparse
import glob
import os
import filetools
import phototools
import progressiterator
def main():
parser = argparse.ArgumentParser(description="Cluster panoramas from portrait-type images.", parents=[logger.loggingParser])
parser.add_argument("-j", "--jpg-dir", required=True,
help="Directory containing JPG photos.")
parser.add_argument("-r", "--raw-dir",
help="Directory containing RAW photos.")
parser.add_argument("-e", "--exif-date-tag", default="DateTimeOriginal",
help="Exif tag for date of creation. [Default: %(default)s]")
parser.add_argument("-n", "--name", required=True,
help="File name prefix.")
args = parser.parse_args()
logger.initLogger(args)
jpg_files = filetools.get_files(args.jpg_dir, ["*"])
raw_files = [] if args.raw_dir is None else filetools.get_files(args.raw_dir, ["*"])
files_dates = []
for files in [jpg_files, raw_files]:
files_dates.extend(phototools.FileDate.get_files_dates(files, args.exif_date_tag))
files_dates.sort()
rename_files = phototools.FileDate.rename_files(files_dates, args.name)
for original_file, new_file in progressiterator.ProgressIterator(rename_files,
description="Rename files"):
os.rename(original_file, new_file)
if __name__ == "__main__":
main()