import os import sys import winreg from pathlib import Path def get_config_path(): if sys.platform == 'win32': # 展开环境变量并转换为标准格式 download_dir = Path(os.path.expandvars("%appdata%/fst")).resolve() else: # 对于非 Windows 系统,使用 ~\Downloads 作为默认下载目录 home_dir = Path.home() download_dir = home_dir / 'fst' dir_path = Path(download_dir) if not dir_path.exists(): dir_path.mkdir(parents=True, exist_ok=True) return str(download_dir) def get_download_directory(): if sys.platform == 'win32': # 打开注册表项 key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders') try: # 读取 "Downloads" 路径 download_dir, _ = winreg.QueryValueEx(key, '{374DE290-123F-4565-9164-39C4925E467B}') # 展开环境变量并转换为标准格式 download_dir = Path(os.path.expandvars(download_dir)).resolve() finally: # 关闭注册表项 winreg.CloseKey(key) else: # 对于非 Windows 系统,使用 ~\Downloads 作为默认下载目录 home_dir = Path.home() download_dir = home_dir / 'Downloads' dir_path = Path(download_dir) if not dir_path.exists(): dir_path.mkdir(parents=True, exist_ok=True) return str(download_dir)