29 lines
851 B
Python
29 lines
851 B
Python
# -*- coding: utf-8 -*-
|
|
"""
|
|
定时报告 CLI 入口(配合 crontab 使用)
|
|
用法:
|
|
python3 reports.py premarket # 盘前分析(工作日 9:00)
|
|
python3 reports.py postmarket # 盘后总结(交易日 15:30)
|
|
"""
|
|
import logging
|
|
import os
|
|
import sys
|
|
|
|
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
|
|
sys.path.insert(0, BASE_DIR)
|
|
os.chdir(BASE_DIR)
|
|
|
|
from database import init_db
|
|
|
|
if __name__ == "__main__":
|
|
logging.basicConfig(level=logging.INFO,
|
|
format="%(asctime)s %(levelname)s %(name)s %(message)s")
|
|
kind = sys.argv[1] if len(sys.argv) > 1 else "premarket"
|
|
if kind not in ("premarket", "postmarket"):
|
|
kind = "premarket"
|
|
init_db()
|
|
from engine.report import send_daily_report
|
|
r = send_daily_report(kind)
|
|
print(f"[{kind}] {r}")
|
|
sys.exit(0 if r.get("ok") else 1)
|