1
0
Fork 0
mirror of synced 2024-06-01 18:09:47 +12:00
bulk-downloader-for-reddit/bdfr/configuration.py

55 lines
1.7 KiB
Python
Raw Normal View History

2021-03-11 00:47:57 +13:00
#!/usr/bin/env python3
# coding=utf-8
from argparse import Namespace
from typing import Optional
import click
2021-03-11 00:47:57 +13:00
class Configuration(Namespace):
def __init__(self):
super(Configuration, self).__init__()
2021-03-11 14:20:21 +13:00
self.authenticate = False
self.config = None
2021-03-11 00:47:57 +13:00
self.directory: str = '.'
self.disable_module: list[str] = []
2021-05-21 09:14:35 +12:00
self.exclude_id = []
self.exclude_id_file = []
self.file_scheme: str = '{REDDITOR}_{TITLE}_{POSTID}'
self.folder_scheme: str = '{SUBREDDIT}'
2021-10-31 15:19:46 +13:00
self.ignore_user = []
2021-07-05 18:58:33 +12:00
self.include_id_file = []
2021-03-11 00:47:57 +13:00
self.limit: Optional[int] = None
self.link: list[str] = []
2021-04-27 14:29:37 +12:00
self.log: Optional[str] = None
self.make_hard_links = False
self.max_wait_time = None
2021-03-11 00:47:57 +13:00
self.multireddit: list[str] = []
self.no_dupes: bool = False
self.saved: bool = False
self.search: Optional[str] = None
self.search_existing: bool = False
2021-05-21 09:14:35 +12:00
self.skip: list[str] = []
2021-03-11 00:47:57 +13:00
self.skip_domain: list[str] = []
self.skip_subreddit: list[str] = []
2021-03-11 00:47:57 +13:00
self.sort: str = 'hot'
self.submitted: bool = False
2022-02-18 13:21:52 +13:00
self.subscribed: bool = True
2021-03-11 00:47:57 +13:00
self.subreddit: list[str] = []
self.time: str = 'all'
2021-05-02 15:56:39 +12:00
self.time_format = None
2021-03-11 00:47:57 +13:00
self.upvoted: bool = False
self.user: list[str] = []
2021-03-11 00:47:57 +13:00
self.verbose: int = 0
2021-03-13 23:18:30 +13:00
# Archiver-specific options
self.all_comments = False
2021-06-11 17:31:11 +12:00
self.format = 'json'
2021-06-12 12:35:31 +12:00
self.comment_context: bool = False
2021-03-13 23:18:30 +13:00
def process_click_arguments(self, context: click.Context):
for arg_key in context.params.keys():
if arg_key in vars(self) and context.params[arg_key] is not None:
vars(self)[arg_key] = context.params[arg_key]