37 lines
1.3 KiB
Python
37 lines
1.3 KiB
Python
"""
|
|
应用配置
|
|
"""
|
|
import os
|
|
|
|
class Config:
|
|
# Flask 配置
|
|
SECRET_KEY = os.environ.get('SECRET_KEY', 'stock-app-secret-key-2026')
|
|
|
|
# 数据库配置
|
|
DB_HOST = os.environ.get('DB_HOST', 'localhost')
|
|
DB_PORT = int(os.environ.get('DB_PORT', 5432))
|
|
DB_NAME = os.environ.get('DB_NAME', 'stock_app')
|
|
DB_USER = os.environ.get('DB_USER', 'postgres')
|
|
DB_PASSWORD = os.environ.get('DB_PASSWORD', '')
|
|
|
|
# 文件路径
|
|
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
|
|
STOCK_DATA_CACHE_DIR = os.path.join(BASE_DIR, 'stock_data_cache')
|
|
STOCK_NAME_CACHE_FILE = os.path.join(BASE_DIR, 'stock_names.json')
|
|
TRADES_FILE = os.path.join(BASE_DIR, 'trades.json')
|
|
WATCHLIST_FILE = os.path.join(BASE_DIR, 'watchlist.json')
|
|
ALERTS_CACHE_FILE = os.path.join(BASE_DIR, 'alerts_cache.json')
|
|
|
|
# 阿里云K线API
|
|
ALICLOUD_APPCODE = os.environ.get('ALICLOUD_APPCODE', '50528b6544ac4234a8ccb5c9f2c01607')
|
|
ALICLOUD_KLINE_URL = 'https://jmqqgphqcx.market.alicloudapi.com/finance/a-shares-kline'
|
|
|
|
# 服务端口
|
|
PORT = int(os.environ.get('PORT', 3333))
|
|
|
|
# 确保缓存目录存在
|
|
@classmethod
|
|
def init_app(cls):
|
|
if not os.path.exists(cls.STOCK_DATA_CACHE_DIR):
|
|
os.makedirs(cls.STOCK_DATA_CACHE_DIR)
|