SCManager 是一个基于 Python + Tkinter 的 Chrome 多会话数据分离管理器。
它可以为不同 Chrome 会话创建独立的数据目录和缓存目录,用来隔离 Cookie、LocalStorage、历史记录、扩展数据、缓存等浏览器会话数据。每个会话可以单独开启、关闭、编辑备注;再次开启时会继续使用该会话自己的 Chrome 数据,并尽量恢复上次退出时的页面。
程序不会把会话配置和 Chrome 用户数据写入 AppData,所有运行数据都保存在当前运行目录的 data/ 下。
普通启动:
python main.py调试启动:
python main.py --debug普通模式只输出必要日志。调试模式会额外输出 Chrome 启动参数、进程匹配信息和 Chrome 自身的 verbose 日志,适合排查浏览器没有弹出、启动后秒退等问题。
- 创建多个 Chrome 独立会话
- 列表展示会话名称、运行状态、语言、上次开启时间和备注
- 单独开启或关闭指定会话
- 编辑会话备注、语言、窗口大小和窗口位置
- 每个会话使用独立
profile和cache - 下次开启时继续使用对应会话数据
- 可限制 WebRTC 非代理 UDP 暴露
SCManager/
├─ main.py # 程序入口
├─ README.md # 项目说明
├─ img/
│ └─ gui.png # 界面预览
├─ scmanager/
│ ├─ __init__.py
│ ├─ __main__.py
│ ├─ appWindow.py # GUI 界面和交互逻辑
│ ├─ chromeManager.py # Chrome 启动、关闭和进程识别
│ ├─ logManager.py # 日志配置
│ ├─ sessionModel.py # 会话数据模型
│ └─ sessionStore.py # 会话配置读写
└─ data/ # 运行数据,已被 git 忽略
├─ sessions.json # 会话配置
├─ logs/
│ ├─ scmanager.log # 主程序日志
│ └─ chrome/ # debug 模式下的 Chrome 输出日志
└─ sessions/
└─ <sessionId>/
├─ profile/ # Chrome 用户数据目录
└─ cache/ # Chrome 缓存目录
SCManager 主要做的是浏览器数据目录隔离。它会通过 Chrome 官方启动参数指定独立的 --user-data-dir 和 --disk-cache-dir,并提供语言、窗口大小、窗口位置、WebRTC UDP 策略等基础差异化配置。
它不实现反检测式指纹伪造,也不会绕过网站安全策略。
