read_transactions.config

author:

Tim Häberlein

version:

1.2

date:

21.10.2025

organisation:

TU Dresden, FZM

ConfigManager

Lädt die zentrale Konfigurationsdatei (config.yaml) für das Projekt. Suchreihenfolge:

  1. ./config.yaml (aktuelles Arbeitsverzeichnis)

  2. ../config.yaml (eine Ebene höher)

  3. ./config/config.yaml

  4. ../config/config.yaml

  5. ~/.config/read_transactions/config.yaml

Attributes

Classes

classproperty

ConfigManager

Zentrale Verwaltung der Projektkonfiguration.

Module Contents

class read_transactions.config.classproperty(f)
f
__get__(obj, owner)
class read_transactions.config.ConfigManager

Zentrale Verwaltung der Projektkonfiguration.

_config_cache: Dict[str, Any] | None = None
_config_path: pathlib.Path | None = None
_yaml
_logger
_key_path
_fernet_cache: cryptography.fernet.Fernet | None = None
config_path() str

Gibt den Pfad der aktuell geladenen Konfigurationsdatei zurück.

classmethod load(ignore_cache: bool = False) Dict[str, Any]

Lädt und cached die YAML-Konfiguration.

Parameter:

ignore_cache (bool) – Wenn True, wird der Cache ignoriert und die Datei neu geladen.

Rückgabe:

Geladene Konfigurationsdaten.

Rückgabetyp:

Dict[str, Any]

classmethod _get_cipher() cryptography.fernet.Fernet

Lädt oder erzeugt den Verschlüsselungsschlüssel.

classmethod _find_config_file() pathlib.Path
classmethod get_credentials(crawler_name: str) Dict[str, str]

Gibt die Credentials für einen Crawler zurück.

classmethod get_urls(crawler_name: str) Dict[str, str]

Gibt URL-Mappings für einen Crawler zurück.

classmethod get_run_all() Dict[str, bool]

Gibt die Run-All-Einstellungen zurück.

classmethod set_run_all(crawler_name: str, value: bool) None

Setzt die Run-All Einstellung für einen Crawler.

Parameter:
  • crawler_name – Name des Crawlers (z. B. ‚amex‘)

  • value – True oder False

classmethod set_credentials(crawler_name: str, user: str | None = None, pwd: str | None = None) None

Setzt die Credentials für einen Crawler und speichert sie verschlüsselt. :param crawler_name: Name des Crawlers (z. B. ‚amex‘) :param user: Neuer Benutzername :param pwd: Neues Passwort

classmethod show() None

Zeigt den aktuell geladenen Config-Inhalt als YAML an.

classmethod clear(delete_file: bool = False) None

Löscht den internen Config-Cache oder optional die Config-Datei selbst.

Parameter:

delete_file (bool) – Wenn True, wird die gefundene config.yaml gelöscht.

classmethod edit(key_path: str, value: Any) None

Ändert oder fügt einen Eintrag in der Config-Datei hinzu.

Parameter:
  • key_path (str) – Punkt-getrennter Pfad, z. B. ‚credentials.amex.user‘

  • value (Any) – Neuer Wert (automatisch als String gespeichert)

classmethod create_default(path: str | None = None, overwrite: bool = False) pathlib.Path

Erstellt eine Standard-config.yaml mit Beispielinhalten und Kommentaren.

Parameter:
  • path – Optionaler Pfad, an dem die Datei erstellt werden soll. (Standard: ~/.config/read_transactions/config.yaml)

  • overwrite – Wenn True, überschreibt eine bestehende Datei.

Rückgabe:

Pfad zur erstellten Konfigurationsdatei.

Rückgabetyp:

Path

read_transactions.config.config = None