import asyncio import argparse from packages.core.database import SessionLocal from packages.core.logger import app_logger from packages.connectors.eu import EurostatConnector async def run_eu_job(start_period: str = None, end_period: str = None): app_logger.info("Starting EU (Eurostat) macro data job...") async with SessionLocal() as session: connector = EurostatConnector( session=session, start_period=start_period, end_period=end_period ) await connector.run() app_logger.info("EU (Eurostat) macro data job finished.") if __name__ == "__main__": parser = argparse.ArgumentParser(description="Run EU Eurostat Macro Data Connector") parser.add_argument("--start", type=str, help="Start period in YYYY-MM format") parser.add_argument("--end", type=str, help="End period in YYYY-MM format") args = parser.parse_args() asyncio.run(run_eu_job(start_period=args.start, end_period=args.end))