import asyncio import argparse from packages.core.database import SessionLocal from packages.core.logger import app_logger from packages.connectors.us import USCustomsConnector async def run_us_job(start_period: str = None, end_period: str = None): """ 运行美国海关数据与提单整合任务 """ app_logger.info("Starting US customs & B/L merge job...") async with SessionLocal() as session: connector = USCustomsConnector( session=session, start_period=start_period, end_period=end_period ) await connector.run() app_logger.info("US customs & B/L merge job finished.") if __name__ == "__main__": parser = argparse.ArgumentParser(description="Run US Customs 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_us_job(start_period=args.start, end_period=args.end))