报错、成功发送钉钉消息

This commit is contained in:
2025-10-12 13:50:23 +08:00
parent 1ccd9e0011
commit 95fb00ceab

View File

@@ -6,6 +6,8 @@ import akshare as ak
from index_downloader import get_all_stock_index
import schedule
import time
import traceback
from dingtalk import DingTalkBot
def get_latest_index_kline_date():
@@ -60,28 +62,38 @@ def get_latest_index_kline_date():
return df
def main():
db_config = DatabaseConfig()
logger.info(f"数据库连接: {db_config.connection_string}")
webhook = "https://oapi.dingtalk.com/robot/send?access_token=fb70c1561d8beba94b4f11568f4bb15e3ae07ccbdc8ac19676434a9d1cd17546" # 填写你的webhook
secret = "SEC1ae7cd2f1a6f9da3611af37da3e7d954c1e8533fc073c6c8cc5e5af3b6e5926b" # 填写你的加签token如果有否则留空
dingtalk = DingTalkBot(webhook, secret)
try:
db_config = DatabaseConfig()
logger.info(f"数据库连接: {db_config.connection_string}")
# 如果只是测试连接
db_manager = DatabaseManager(db_config)
if db_manager.test_connection():
logger.info("✅ 数据库连接测试成功")
else:
logger.error("❌ 数据库连接测试失败")
# 如果只是测试连接
db_manager = DatabaseManager(db_config)
if db_manager.test_connection():
logger.info("✅ 数据库连接测试成功")
else:
logger.error("❌ 数据库连接测试失败")
raise Exception("数据库连接测试失败")
df = get_latest_index_kline_date()
logger.info(df.head())
latest_date = df["date"].values[0]
res = db_manager.execute_query(
f"SELECT date, code, open, high, low, close, volume FROM public.index_kline where code='000001' and date='{latest_date}' order by date desc limit 1;"
)
# print(dict(res))
logger.info(len(res))
if len(res) == 0:
res = db_manager.insert_dataframe(df, "index_kline")
logger.info(res)
df = get_latest_index_kline_date()
logger.info(df.head())
latest_date = df["date"].values[0]
res = db_manager.execute_query(
f"SELECT date, code, open, high, low, close, volume FROM public.index_kline where code='000001' and date='{latest_date}' order by date desc limit 1;"
)
# print(dict(res))
logger.info(len(res))
if len(res) == 0:
res = db_manager.insert_dataframe(df, "index_kline")
logger.info(res)
except Exception as e:
logger.error(f"main 函数执行异常: {e}\n{traceback.format_exc()}")
dingtalk.send_text(f"main 函数执行异常: {e}\n{traceback.format_exc()}")
if __name__ == "__main__":