Meta: Port several things common to various Python scripts to a new website module
This commit is contained in:
parent
a30903c8cf
commit
9ce6362402
6 changed files with 70 additions and 34 deletions
|
@ -9,20 +9,16 @@ import argparse
|
|||
import datetime
|
||||
import json
|
||||
import os.path
|
||||
import re
|
||||
import shutil
|
||||
import subprocess
|
||||
from PIL import Image
|
||||
from PIL.ExifTags import TAGS
|
||||
from typing import Optional
|
||||
from website.metadata import slugify
|
||||
|
||||
|
||||
PHOTOS_CONTENT_DIR = 'content/photos'
|
||||
|
||||
def slugify(s):
|
||||
s = s.strip().lower()
|
||||
s = re.sub(r'\s+', '-', s)
|
||||
s = re.sub(r'[‘’“”"\'()]', '', s)
|
||||
return s
|
||||
|
||||
def parse_args(argv, *a, **kw):
|
||||
parser = argparse.ArgumentParser(*a, **kw)
|
||||
|
@ -34,6 +30,7 @@ def parse_args(argv, *a, **kw):
|
|||
args = parser.parse_args(argv)
|
||||
return args
|
||||
|
||||
|
||||
def main(argv):
|
||||
args = parse_args(argv[1:], prog=argv[0])
|
||||
|
||||
|
@ -145,6 +142,7 @@ def main(argv):
|
|||
print(f'Failed to copy {photo}', file=sys.stderr)
|
||||
return -2
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
import sys
|
||||
result = main(sys.argv)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue