Files
simonandSimon 22ce3a6aea security: 安全规范 + 敏感数据脱敏
- CLAUDE.md 新增安全规范章节(禁止提交 / 必须提供 .env.example)
- finance/config/settings.py 硬编码密码移除
- djapi/api/video/audioRead.py API Key 替换为占位符
- 新增 finance/.env.example 示例配置
- .gitignore 解除 .env.example 排除

Co-Authored-By: Simon <simon@doorcome.cn>
2026-06-17 21:20:07 +08:00

47 lines
1.8 KiB
Python

"""
全局配置模块。
敏感信息优先从环境变量读取,其次使用默认值(仅开发环境)。
"""
import os
from pathlib import Path
from dotenv import load_dotenv
# 确保加载 finance/.env,无论从哪个目录运行
_env_path = Path(__file__).resolve().parent.parent / ".env"
load_dotenv(_env_path)
# ── MariaDB 连接 ──────────────────────────────────────────
# 通过 SSH 隧道连接:shared/script/autossh.sh
MARIADB_CONFIG = {
"host": os.getenv("MAC_DB_HOST", "127.0.0.1"),
"port": int(os.getenv("MAC_DB_PORT", "13306")),
"user": os.getenv("MAC_DB_USER", "myquant"),
"password": os.getenv("MAC_DB_PASSWORD", ""),
"database": os.getenv("MAC_DB_NAME", "myquant"),
"charset": "utf8mb4",
"pool_size": 5,
"pool_recycle": 600, # 10分钟回收,避免 SSH 隧道半开连接
}
# ── 表名前缀 ──────────────────────────────────────────────
TABLE_PREFIX = "mac_"
# 完整表名
TABLE_STOCK_BASIC = f"{TABLE_PREFIX}stock_basic"
TABLE_STOCK_DAILY = f"{TABLE_PREFIX}stock_daily"
TABLE_STOCK_FINANCIAL = f"{TABLE_PREFIX}stock_financial"
TABLE_REPORT = f"{TABLE_PREFIX}report"
# ── AkShare 配置 ──────────────────────────────────────────
AKSHARE_CONFIG = {
"request_timeout": 30,
"retry_times": 3,
"retry_delay": 2, # 秒
}
# ── 默认参数 ──────────────────────────────────────────────
DEFAULT_START_DATE = "20200101"
DEFAULT_END_DATE = None # None 表示当天