Spaces:
Sleeping
Sleeping
File size: 1,197 Bytes
2b20519 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# modules/config_loader.py
import json
from pathlib import Path
from utils.logger import log
class ConfigLoader:
def __init__(self, config_dir: Path = Path("./config")):
self.config_dir = config_dir
self.cities = {}
self.personas = {}
self.interests = {}
try:
self._load_all()
log.info("✅ 所有配置文件加载成功")
except Exception as e:
log.error(f"❌ 配置文件加载失败: {e}", exc_info=True)
raise
def _load_all(self):
# 加载城市
with open(self.config_dir / "cities.json", 'r', encoding='utf-8') as f:
cities_data = json.load(f)
for city in cities_data['cities']:
for alias in [city['name']] + city.get('aliases', []):
self.cities[alias.lower()] = city
# 加载 personas
with open(self.config_dir / "personas.json", 'r', encoding='utf-8') as f:
self.personas = json.load(f)['personas']
# 加载兴趣
with open(self.config_dir / "interests.json", 'r', encoding='utf-8') as f:
self.interests = json.load(f)['interests']
|