From 4c2af8ff0059802def1bb46cfe958da71b79834e Mon Sep 17 00:00:00 2001 From: claude_dev Date: Thu, 23 Jul 2026 09:06:00 +0800 Subject: [PATCH] =?UTF-8?q?fix(data):=20verify=5Fakshare=5Fe2e=20=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=E4=BA=8B=E4=BB=B6=E7=B1=BB=E8=B7=AF=E5=BE=84(data/sta?= =?UTF-8?q?tic/=20=E9=9D=9E=20events/)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit akshare_static_download 全类型(含 per-date 龙虎榜/大宗/两融/解禁 + per-period 预告/快报) 都落 data/static//, 非 data/events/; 合并为单一 static 检查(13 类型) --- scripts/data_platform/verify_akshare_e2e.py | 24 ++++++--------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/scripts/data_platform/verify_akshare_e2e.py b/scripts/data_platform/verify_akshare_e2e.py index f125670..1242018 100644 --- a/scripts/data_platform/verify_akshare_e2e.py +++ b/scripts/data_platform/verify_akshare_e2e.py @@ -14,10 +14,13 @@ sys.stdout.reconfigure(line_buffering=True) BASE = Path(r"C:\sanguo_vnpy_v2\data") ok, warn = [], [] -# 1. static/ 各表文件数 + 最新 mtime -print("===== static/ 各表 =====") +# 1. static/ 各表文件数 + 最新 mtime (akshare_static_download 全部类型都落 data/static//) +# per-stock(估值/三表/摘要/北向/股本/十大股东) + per-date(龙虎榜/大宗/两融/解禁) + per-period(预告/快报) +print("===== static/ 各表 (akshare 全类型) =====") for sub in ["valuation", "financial_abstract", "balance", "income", "cashflow", - "northbound", "share_capital", "top_holders"]: + "northbound", "share_capital", "top_holders", + "dragon_tiger", "block_trade", "margin_sse", "restricted", + "forecast", "express"]: d = BASE / "static" / sub if not d.exists(): warn.append(f"static/{sub} MISSING") @@ -33,20 +36,7 @@ for sub in ["valuation", "financial_abstract", "balance", "income", "cashflow", print(f" {sub}: {len(fs)} parquet, latest={latest}") ok.append(f"static/{sub}") -# 2. events/ per-date 类 -print("\n===== events/ per-date 类 =====") -for sub in ["dragon_tiger", "block_trade", "margin_sse", "restricted"]: - d = BASE / "events" / sub - if not d.exists(): - warn.append(f"events/{sub} MISSING(ak-events 未跑或当日无数据)") - print(f" {sub}: MISSING") - continue - fs = list(d.glob("*.parquet")) - print(f" {sub}: {len(fs)} parquet") - if fs: - ok.append(f"events/{sub}") - -# 3. constituent_unified + _old +# 2. constituent_unified + _old (akshare 全类型已在 section 1 的 static/ 检查覆盖) print("\n===== constituent_unified + _old =====") c = sqlite3.connect(str(BASE / "quant_trading.db"), timeout=60) try: