Skip to content

XiaoXianHW/SCManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SCManager

SCManager 是一个基于 Python + Tkinter 的 Chrome 多会话数据分离管理器。

它可以为不同 Chrome 会话创建独立的数据目录和缓存目录,用来隔离 Cookie、LocalStorage、历史记录、扩展数据、缓存等浏览器会话数据。每个会话可以单独开启、关闭、编辑备注;再次开启时会继续使用该会话自己的 Chrome 数据,并尽量恢复上次退出时的页面。

程序不会把会话配置和 Chrome 用户数据写入 AppData,所有运行数据都保存在当前运行目录的 data/ 下。

预览

使用方式

普通启动:

python main.py

调试启动:

python main.py --debug

普通模式只输出必要日志。调试模式会额外输出 Chrome 启动参数、进程匹配信息和 Chrome 自身的 verbose 日志,适合排查浏览器没有弹出、启动后秒退等问题。

主要功能

  • 创建多个 Chrome 独立会话
  • 列表展示会话名称、运行状态、语言、上次开启时间和备注
  • 单独开启或关闭指定会话
  • 编辑会话备注、语言、窗口大小和窗口位置
  • 每个会话使用独立 profilecache
  • 下次开启时继续使用对应会话数据
  • 可限制 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 策略等基础差异化配置。

它不实现反检测式指纹伪造,也不会绕过网站安全策略。

About

Chrome 多会话窗口管理 | Cookie隔离

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages