import os from typing import Dict, Any class Config: def __init__(self): self.settings = { 'TIMEOUT': int(os.getenv('URLD_TIMEOUT', 10)), 'MAX_FILE_SIZE': int(os.getenv('URLD_MAX_FILE_SIZE', 2 * 1024 * 1024 * 1024)), 'RESPECT_ROBOTS': os.getenv('URLD_RESPECT_ROBOTS', 'True').lower() == 'true', 'USE_PROXY': os.getenv('URLD_USE_PROXY', 'False').lower() == 'true', 'PROXY_URL': os.getenv('URLD_PROXY_URL', ''), 'REQUEST_DELAY': float(os.getenv('URLD_REQUEST_DELAY', 1.0)), 'MAX_RETRIES': int(os.getenv('URLD_MAX_RETRIES', 3)), 'OUTPUT_FORMAT': os.getenv('URLD_OUTPUT_FORMAT', 'json'), 'CHROME_DRIVER_PATH': os.getenv('URLD_CHROME_DRIVER_PATH', '/usr/local/bin/chromedriver'), } def get(self, key: str) -> Any: return self.settings.get(key) def update(self, settings: Dict[str, Any]) -> None: self.settings.update(settings)