Files
backblaze-invoices-downloader/config.py
Jan Bader c53ded0ed5 Retry
2026-04-05 22:18:24 +02:00

27 lines
941 B
Python

import os
from pathlib import Path
from dotenv import load_dotenv
load_dotenv()
class Config:
BACKBLAZE_EMAIL = os.getenv("BACKBLAZE_EMAIL", "")
BACKBLAZE_PASSWORD = os.getenv("BACKBLAZE_PASSWORD", "")
INVOICE_VAT_ID = os.getenv("INVOICE_VAT_ID", "")
INVOICE_DOCUMENT_TYPE = os.getenv("INVOICE_DOCUMENT_TYPE", "")
INVOICE_COMPANY = os.getenv("INVOICE_COMPANY", "")
INVOICE_NOTES = os.getenv("INVOICE_NOTES", "")
OUTPUT_DIR = os.getenv("OUTPUT_DIR", "./invoices")
BROWSER_HEADLESS = os.getenv("BROWSER_HEADLESS", "true").lower() == "true"
BROWSER_TIMEOUT = int(os.getenv("BROWSER_TIMEOUT", "60000"))
LOG_LEVEL = os.getenv("LOG_LEVEL", "INFO")
@classmethod
def validate(cls):
if not cls.BACKBLAZE_EMAIL or not cls.BACKBLAZE_PASSWORD:
raise ValueError("BACKBLAZE_EMAIL and BACKBLAZE_PASSWORD must be set")
Path(cls.OUTPUT_DIR).mkdir(parents=True, exist_ok=True)