run_popularity_stats.py 831 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!/usr/bin/env python3
  2. """单独执行 demand_popularity_stats 热度统计。
  3. 用法:
  4. python jobs/run_popularity_stats.py 20260714
  5. python jobs/run_popularity_stats.py # 默认当天
  6. """
  7. from __future__ import annotations
  8. import logging
  9. import sys
  10. from datetime import datetime
  11. from supply_infra.scheduler.jobs.sync_multi_demand_pool_odps_to_mysql import (
  12. compute_popularity_stats,
  13. )
  14. logging.basicConfig(
  15. level=logging.INFO,
  16. format="%(asctime)s [%(levelname)s] %(name)s: %(message)s",
  17. )
  18. def main(biz_dt: str | None = None) -> dict:
  19. if biz_dt is None:
  20. biz_dt = datetime.now().strftime("%Y%m%d")
  21. result = compute_popularity_stats(biz_dt)
  22. print(result)
  23. return result
  24. if __name__ == "__main__":
  25. date_arg = sys.argv[1] if len(sys.argv) > 1 else None
  26. main(date_arg)