ScreenshotLite 是一款以速度为第一原则的 Windows 屏幕截图工具:按下热键即可完成截图并保存,全流程毫秒级完成,确保快速捕捉所需画面。该工具仅专注于截图与保存这一项功能。
- 极速保存:热键按下 → 抓屏 → 编码 → 落盘,全流程毫秒级完成。底层使用
mss原生抓屏与cv2.imencode直接编码写入,无缩放、无转码、无多余处理。 - 极简无冗余:仅提供截图功能,不捆绑录屏、编辑、云同步等非必要功能;界面简洁、逻辑单一,简单可靠。
- 轻量常驻:单文件免安装,常驻系统托盘,全局热键随时可用,不干扰正常工作。
- 极速保存:热键触发后即截即存,全流程毫秒级完成,无任何多余步骤。
- F2 全屏截图:截取鼠标当前所在屏幕;也可通过命令行参数固定抓取指定显示器。
- F3 框选截图(画面冻结):触发时先冻结当前屏幕画面作为框选背景,再拖拽选择区域,松开鼠标即保存;适用于截取视频等动态画面,可避免框选期间画面持续播放导致截帧错误。
- ESC 取消框选:框选过程中随时按 ESC 取消。
- 日期编号保存:在保存目录下按“年月日_编号”命名(如
20260811_1.png),同一天内自动顺延,不覆盖已有图片。 - GUI 设置面板:点击输入框后按下新按键组合即可录制自定义热键;保存目录支持直接输入或“浏览…”选择;支持设置开机自动启动。
- 系统托盘常驻:关闭窗口后最小化到托盘,双击托盘图标恢复窗口,热键仍可继续工作。
- 配置持久化:热键与保存目录保存在
capture_config.json,重启后自动生效。 - 实时日志:窗口内显示保存路径、图片尺寸、显示器信息等日志。
- Windows 10 / 11
- Python 3.8+
git clone https://github.com/toki-2004/ScreenshotLite.git
cd ScreenshotLite
pip install -r requirements.txt依赖如下:
mss:屏幕捕获keyboard:全局热键opencv-python:图像编码与处理numpy:图像数组PyQt5:图形界面与托盘
无需安装 Python 与任何依赖:从 Releases 下载 ScreenshotLite.exe,双击即可运行。该 exe 由 PyInstaller 打包为单文件,配置(capture_config.json)与默认截图目录(input/)均位于 exe 所在目录。
直接运行:
python screenshot_lite.py默认行为:F2 截取鼠标当前所在屏幕(在多显示器环境下尤为便捷)。
指定显示器:
python screenshot_lite.py 1 # 固定抓取 mss 显示器索引 1(主屏)
python screenshot_lite.py 2 # 索引 2(第二块屏幕)索引不存在时会自动回退到鼠标所在屏幕,并在日志中给出警告。
| 按键 | 功能 |
|---|---|
| F2 | 全屏截图(鼠标所在屏幕或命令行指定的显示器) |
| F3 | 拖拽框选截图 |
| ESC | 取消框选 |
热键可在 GUI 中自定义:点击“全屏截图/框选截图”输入框,然后按下新按键组合(如 Ctrl+F6),点击“应用设置”即生效并保存。
默认保存到程序所在目录下的 input/。可在 GUI 的“保存设置”中修改,点击“应用设置”后立即生效并持久化。
设置保存在 capture_config.json:
{
"fullscreen_hotkey": "f2",
"region_hotkey": "f3",
"save_dir": "D:/pythonitems/ScreenshotLite/input",
"autostart": false
}配置文件缺失或损坏时会自动使用默认设置,不会影响程序启动。“开机自动启动”通过写入当前用户的 Run 注册表键实现。
以下功能均已在 Windows + 多显示器环境下实测通过:
- 全屏截图:鼠标所在屏幕抓取、命令行指定显示器抓取、越界索引回退
- 框选截图:画面冻结背景、遮罩显示、拖拽选区、松开保存、ESC 取消(保存内容与冻结画面逐像素一致)
- 日期编号:按
年月日_编号顺延,如20260811_1.png;旧命名与其它日期的文件不参与编号 - 防连发:0.6 秒冷却,按住热键不会重复截图
- 设置面板:热键录制(如
Ctrl+F6)、保存目录修改、开机自启开关、配置读写与损坏回退 - 托盘与日志:最小化到托盘、日志窗口输出保存记录与显示器枚举
- 全局热键无效? 请确认程序以普通用户运行即可;若以管理员身份运行其他程序,键盘钩子可能因权限隔离无法生效,建议保持程序与目标程序同一权限级别。
- 开机自启设置失败? 开机自启写入当前用户的注册表 Run 键,普通权限即可;若仍失败,请以管理员权限运行后重试。
- 保存中文路径失败? 程序内部使用
cv2.imencode+ 二进制写入,已兼容中文/特殊字符路径。 - 多显示器框选错位? 框选坐标已转换为虚拟桌面绝对坐标,多屏排列下不会错位。
ScreenshotLite/
├── screenshot_lite.py # 主程序
├── dist/ScreenshotLite.exe # 打包后的可执行文件(在 GitHub Releases 提供下载)
├── capture_config.json # 配置文件(首次运行后生成)
├── input/ # 默认截图保存目录
└── README.md
本项目采用 MIT 许可证。


