1
0
mirror of https://github.com/sashacmc/photo-importer.git synced 2024-11-24 08:02:14 +02:00
photo-importer/config.py

62 lines
1.8 KiB
Python
Raw Normal View History

#!/usr/bin/python3
import configparser
import os
class Config(object):
DEFAULT_CONFIG_FILE = os.path.expanduser('~/.photo-importer.cfg')
DEFAULTS = {
'main': {
2018-05-07 15:59:47 +02:00
'out_time_format': '%%Y-%%m-%%d_%%H-%%M-%%S',
'out_date_format': '%%Y/%%Y-%%m-%%d',
2018-05-20 14:08:34 +02:00
'out_subdir_image': 'Foto',
'out_subdir_video': 'Video',
'out_subdir_audio': 'Audio',
'time_src_image': 'exif,name',
'time_src_video': 'name,attr',
'time_src_audio': 'name,attr',
'file_ext_image': 'jpeg,jpg',
'file_ext_video': 'mp4,mpg,mpeg,mov,avi,mts',
2018-09-23 21:55:10 +02:00
'file_ext_audio': 'mp3,3gp,3gpp,m4a,wav',
'file_ext_garbage': 'thm,ctg',
'file_ext_ignore': 'ini,zip,db',
'remove_garbage': 1,
'remove_empty_dirs': 1,
'move_mode': 1,
'threads_count': 2,
2018-06-25 09:47:59 +02:00
},
'server': {
'port': 8080,
'web_path': 'web',
'remote_drive_reg': 'sd[d-z][0-9]',
'out_path': '/mnt/multimedia/NEW/',
'in_path': '',
}
}
def __init__(self, filename=None, create=False):
if filename is None:
filename = self.DEFAULT_CONFIG_FILE
self.__config = configparser.ConfigParser()
self.__config.read_dict(self.DEFAULTS)
self.__config.read([filename, ])
if create:
self.__create_if_not_exists()
def __create_if_not_exists(self):
if os.path.exists(self.DEFAULT_CONFIG_FILE):
return
with open(self.DEFAULT_CONFIG_FILE, 'w') as conffile:
self.__config.write(conffile)
2018-05-07 14:54:56 +02:00
def __getitem__(self, sect):
return self.__config[sect]
if __name__ == "__main__":
Config(create=True)