Processing Configuration

Le module ProcessingConfigManager configure les paramètres généraux de traitement, notamment ceux liés à la performance du scraping web et au nettoyage initial des données textuelles.

Usage

Ce gestionnaire est instancié par le ConfigManager. Ses paramètres, accessibles via ConfigManager.processing, sont utilisés par les modules qui effectuent des requêtes réseau ou du nettoyage de texte.

Fonctionnalités

  • Multithreading : définit le nombre de threads parallèles (NB_THREADS_URL) à utiliser pour le traitement des URLs, permettant d’accélérer la collecte de données.

  • Contrôle des délais : configure les délais d’attente entre les appels réseau (DELAI_ENTRE_APPELS) et en cas d’erreur (DELAI_EN_CAS_ERREUR) pour éviter de surcharger les serveurs distants.

  • Nettoyage de caractères : contient un dictionnaire de remplacements de caractères (char_replacements) qui est utilisé pour normaliser le texte brut. Il gère la conversion des guillemets, des tirets et la standardisation des espaces.

  • Validation : la méthode validate s’assure que le nombre de threads et les délais sont des valeurs positives et que le dictionnaire de remplacements n’est pas vide.

Modules

class src.smart_watch.config.processing_config.ProcessingConfig(nb_threads_url: int = 1, delai_entre_appels: float = 1.0, delai_en_cas_erreur: float = 5.0, char_replacements: ~typing.Dict[str, str] = <factory>)[source]

Bases : object

Représente la configuration pour le traitement des données.

nb_threads_url

le nombre de threads à utiliser pour le traitement des URLs.

Type:

int

delai_entre_appels

le délai en secondes entre chaque appel d’URL.

Type:

float

delai_en_cas_erreur

le délai en secondes à attendre en cas d’erreur.

Type:

float

char_replacements

un dictionnaire pour le remplacement de caractères lors du nettoyage.

Type:

Dict[str, str]

nb_threads_url: int = 1
delai_entre_appels: float = 1.0
delai_en_cas_erreur: float = 5.0
char_replacements: Dict[str, str]
__init__(nb_threads_url: int = 1, delai_entre_appels: float = 1.0, delai_en_cas_erreur: float = 5.0, char_replacements: ~typing.Dict[str, str] = <factory>) None
class src.smart_watch.config.processing_config.ProcessingConfigManager(env_file: Path | None = None)[source]

Bases : BaseConfig

Gère la configuration de traitement de l’application.

Cette classe charge la configuration depuis les variables d’environnement et la valide.

config

l’objet de configuration de traitement.

Type:

ProcessingConfig

__init__(env_file: Path | None = None) None[source]

Initialise le gestionnaire de configuration de traitement.

Paramètres:

env_file (Optional[Path], optional) – le chemin vers le fichier .env. Par défaut, None.

_init_processing_config() ProcessingConfig[source]

Initialise l’objet de configuration de traitement.

Charge les valeurs depuis les variables d’environnement et définit les remplacements de caractères par défaut.

Renvoie:

un objet contenant la configuration de traitement.

Type renvoyé:

ProcessingConfig

validate() bool[source]

Valide la configuration de traitement.

Vérifie que les valeurs de configuration sont dans des plages valides.

Renvoie:

True si la configuration est valide.

Type renvoyé:

bool

Lève:

ValueError – si une ou plusieurs valeurs de configuration sont invalides.

_load_environment()

Charge les variables d’environnement depuis le fichier .env.

Réinitialise d’abord les variables (sauf en environnement conteneurisé) puis charge celles du fichier .env. Si le fichier n’existe pas, utilise les variables système existantes.

_reset_environment()

Réinitialise les variables d’environnement du fichier .env.

Supprime les variables chargées depuis le fichier .env pour éviter les conflits avec les variables système ou conteneurisées. Ne s’exécute pas dans un environnement conteneurisé.

get_env_var(key: str, default: str | None = None, required: bool = False) str | None

Récupère une variable d’environnement de manière sécurisée.

Paramètres:
  • key (str) – la clé de la variable d’environnement à récupérer.

  • default (Optional[str], optional) – la valeur par défaut si la variable n’est pas trouvée.

  • required (bool) – si True, lèvera une exception si la valeur est manquante.

Renvoie:

la valeur de la variable d’environnement, ou None.

Type renvoyé:

Optional[str]

Lève:

ValueError – si la variable est requise mais non définie.