基于 Python + PyQt5 的桌面多功能工具集,覆盖编码、加解密、媒体处理、网络调试等常用场景,本地运行、数据不上传。
| 功能 | 说明 |
|---|---|
| 编码 / 解码 | Base64、URL、Hex、Unicode、摩尔斯等多种编解码互转 |
| JSON 格式化 | JSON 美化、压缩、语法验证 |
| HTML 美化 | HTML 代码格式化,支持 XPath / 正则搜索 |
| 简繁转换 | 中文简体 / 繁体互转,支持台湾、香港变体 |
| 乱码修复 | 自动检测编码组合,一键修复乱码文本 |
| 汉字笔画 | 输入汉字文本,统计每字笔画数及总笔画 |
| Base64 → 图片 | 批量解码 Base64 / Data URI,保存为图片文件 |
| 图片 → Base64 | 图片批量编码为 Base64 / Data URI,可一键复制或保存为 .txt |
| 功能 | 说明 |
|---|---|
| 加密 / 解密 | AES、3DES、ChaCha20、Salsa20 等 11 种算法 |
| 哈希 / 摘要 | MD5、SHA 系列、BLAKE2、HMAC 等哈希计算 |
| 密文识别 | 根据特征自动识别加密/哈希算法(MD5、bcrypt、JWT 等) |
| SSH 密钥 | RSA / Ed25519 / ECDSA 密钥对生成与导出 |
| OpenSSL 密钥 | 非对称密钥对生成,支持 PEM / DER / OpenSSH 格式导出 |
| 自签名证书 | 生成包含 SAN 的 HTTPS 证书,可直接用于 nginx/Apache |
| UUID 生成 | UUID v1/v3/v4/v5 批量生成,多种输出格式 |
| 功能 | 说明 |
|---|---|
| 时区转换 | 世界时钟实时展示,Unix 时间戳 ↔ 格式化时间互转 |
| JWT 解析 | 解码 JWT Header/Payload,检查过期时间,纯本地运行 |
| Cookie 解析 | 解析 Cookie 请求头 / Set-Cookie,自动生成 requests 代码 |
| URL 解析 | 解析复杂 URL 查询参数,可编辑,一键生成 Python requests 代码 |
| 配置格式转换 | JSON / YAML / TOML 三种配置格式双向互转 |
| 文件哈希 | 拖放文件/文件夹批量计算 MD5/SHA-1/SHA-256/SHA-512,支持校验比对 |
| Doc → PDF | 批量将 .doc / .docx 文档导出为 PDF,可自定义输出目录 |
| MD → PDF / 图片 | Markdown 批量转 PDF(A4/Letter/A3)或 PNG/JPEG 图片,Qt 内置渲染无外部依赖 |
| 电子书转换 | EPUB / PDF / MOBI 批量互转,需安装 Calibre |
| cURL 转换 | cURL 命令转换为 Python / Go / Java / PHP 等代码 |
| JSON 转代码 | JSON 结构转 C++ / Java / Python / PHP / TypeScript 类定义(含嵌套) |
| 下划线 ↔ 驼峰 | snake_case ↔ camelCase 批量命名风格互转 |
| 正则测试 | 正则表达式实时匹配测试与高亮显示 |
| 字符串比对 | 两段文本逐行 / 逐字符差异高亮对比 |
| 功能 | 说明 |
|---|---|
| 端口扫描 | TCP 端口开放检测与服务协议自动识别 |
| 代理测试 | HTTP / SOCKS5 代理批量测试 URL 可达性 |
| 防火墙规则 | iptables / ufw / firewalld / nftables / netsh 规则生成 |
| 种子 ↔ 磁力 | 种子转磁力(纯本地) / 磁力转种子(需联网) |
| 功能 | 说明 |
|---|---|
| 媒体信息 | 查看视频/音频全部流信息,包含编解码器、音轨/字幕语言等 |
| 视频精确剪切 | 拖拽时间轴逐帧定位起止点,快速模式(stream copy)/ 精确模式(重编码)双选 |
| 音频格式转换 | MP3 / AAC / FLAC / WAV / OGG / Opus 批量互转,支持整个文件夹 |
| 视频转 GIF | 拖拽时间轴选定起止帧 + 帧预览,帧率/分辨率可调,FFmpeg 调色板优化 |
| 水印检测 | 隐藏水印检测 / 嵌入 / 提取(blind_watermark) |
| 视频压缩 | FFmpeg 视频压缩,H.264 / H.265 / AV1,支持硬件加速 |
| 视频格式转换 | 无损封装转换(不重编码),M2TS→MP4 / MKV→MP4 等,支持批量 |
| 媒体提取 | 从视频提取音频(MP3/AAC/FLAC/WAV),或逐帧提取图片;支持批量提取音频 |
| 图片压缩 | 批量 JPEG / PNG / WebP 压缩,视觉质量几乎无损 |
| 图片格式转换 | JPEG / PNG / WebP / BMP / TIFF / ICO 互转,单文件/批量均支持 |
| 图片 EXIF | 查看相机参数/GPS/时间等元数据,批量清除隐私 EXIF 信息 |
| 功能 | 说明 |
|---|---|
| 颜色代码转换 | HEX / RGB / HSL / HSV / CMYK 实时互转;内置 HSV 色彩选择器(大色块点选 + 色相条 + 键盘微调) |
git clone https://github.com/yourname/QtCoder.git
cd QtCoderpython -m venv .venv
# Windows
.venv\Scripts\activate
# Linux / macOS
source .venv/bin/activate
pip install -r requirements.txtpython main.py将项目打包为独立可执行文件(dist/QtCoder/QtCoder.exe),使用项目自带的 build.py。
| 内容 | 说明 | 是否必须 |
|---|---|---|
| Python 虚拟环境 | 项目根目录下 .venv,已执行 pip install -r requirements.txt |
必须 |
| FFmpeg | 用于视频/音频相关功能。放入对应目录: • Windows: vendor/ffmpeg/bin/• Linux: linux_ffmpeg/ffmpeg/bin/或执行 python build.py --download-ffmpeg 自动下载 |
必须 |
| Calibre | 电子书转换功能需要。将 Calibre 便携版 解压到 bin/calibre/;不准备则打包后用户需自行下载并在软件内指定路径(路径须短于 59 字符) |
可选 |
| nmap | 端口扫描功能需要。将 nmap 放入 bin/nmap/;不准备则端口扫描不可用 |
可选 |
# 激活虚拟环境后执行
python build.py常用参数:
| 命令 | 说明 |
|---|---|
python build.py |
自动检测本机平台,完整打包(先清理旧产物) |
python build.py --target win64 |
指定目标平台为 Windows x64 |
python build.py --download-ffmpeg |
仅下载本机平台 FFmpeg,不打包 |
python build.py --clean |
仅清理 build/ 和 dist/ |
python build.py --no-clean |
打包前不清理旧文件 |
输出目录:dist/QtCoder/,内含可执行文件、依赖库及可选的 ffmpeg/、bin/calibre/ 等。
- Python 3.x + PyQt5 — 跨平台 GUI
- FFmpeg(外部程序)— 视频/音频处理
- PyCryptodome / cryptography — 加解密
- Pillow / OpenCV — 图片/视频处理
- blind-watermark — 隐写水印
- zhconv / PyYAML / toml / lxml — 文本/配置处理
- libtorrent — 种子/磁力互转
- 其余依赖见
requirements.txt
MIT License
如对你有帮助,欢迎 Star。