新增一键运行功能

This commit is contained in:
2026-04-29 17:10:21 +08:00
parent f843197e27
commit e1aa6ab179
7 changed files with 173 additions and 168 deletions
+13 -16
View File
@@ -1,7 +1,10 @@
import tushare as ts
from sqlalchemy import create_engine, text
from sqlalchemy import text
from datetime import datetime
import sys
import argparse
from stock_config import TUSHARE_TOKEN, get_engine as create_db_engine
# =======================
# 1. 日期校验(YYYYMMDD)
@@ -36,14 +39,7 @@ def validate_dates(start_str, end_str):
# 2. 创建数据库连接(解决 % 编码问题)
# =======================
def get_engine():
engine = create_engine(
"mysql+pymysql://yangfan@8.159.129.156:10836/level?charset=utf8mb4",
connect_args={
"password": "aA%8023321088"
},
pool_pre_ping=True
)
return engine
return create_db_engine()
# =======================
@@ -92,11 +88,11 @@ def run(start_date, end_date, token):
)
except Exception as e:
print(f"❌ 获取数据失败: {e}")
return
return False
if df is None or df.empty:
print("⚠️ 无数据")
return
return False
records = []
for _, row in df.iterrows():
@@ -126,15 +122,16 @@ def run(start_date, end_date, token):
conn.execute(sql, records)
print(f"✅ 写入完成,共 {len(records)} 条")
return True
# =======================
# 5. 程序入口(只改这里)
# =======================
if __name__ == "__main__":
START_DATE = "20240424"
END_DATE = "20260424"
parser = argparse.ArgumentParser(description="同步交易日历")
parser.add_argument("--start-date", default="20260429", help="开始日期,格式 YYYYMMDD")
parser.add_argument("--end-date", default="20260429", help="结束日期,格式 YYYYMMDD")
args = parser.parse_args()
TUSHARE_TOKEN = "0fad3cf498757089e2630028455d5bbe1637475788bcdaa1f2175e93"
run(START_DATE, END_DATE, TUSHARE_TOKEN)
run(args.start_date, args.end_date, TUSHARE_TOKEN)