# MinIOPyClient **Repository Path**: SailorCoder/min-iopy-client ## Basic Information - **Project Name**: MinIOPyClient - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-06 - **Last Updated**: 2026-05-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 科研数据湖客户端 (MinIO GUI Client) 基于 PySide6 + MinIO Python SDK 开发的科研数据湖图形化管理客户端,适用于研华工控机、银河麒麟服务器、Windows 管理端等多平台环境。 ## 功能特性 ### 连接与概览 - 多服务器配置管理(支持保存多个 MinIO 服务器连接) - 密钥混淆存储(Base64 + 字节翻转) - 连接时自动检测账户权限级别 ### 存储桶管理 - 存储桶创建/删除(带确认机制) - 版本控制 (Versioning) 一键开关 - 存储桶访问策略配置 ### 文件浏览器 - 模拟文件夹层级视图(面包屑导航) - 高性能 QTableView + 分页加载(200条/页) - 拖拽上传支持 - 右键菜单:上传、下载、删除、批量标签 ### 科研增强 - 图片缩略图实时预览(.jpg/.png/.bmp/.tif 等) - 批量标签管理(实验员、实验批次、项目名称、设备编号等科研元数据) - 历史版本回溯(查看并下载文件的历史旧版本) ### 传输管理 - 异步后台传输队列,UI 不卡顿 - 实时进度条 + 传输速度显示 - 大文件自动分片上传(>64MB) ### 挂载与同步 - 集成 rclone 挂载控制(将存储桶挂载为本地盘符) - 一键镜像同步(本地采集目录 → 服务器) - PyInstaller 打包为独立 .exe ## 技术架构 ``` MVC 架构: ├── config/ # 配置模块(路径、加密) ├── models/ # 数据模型(连接、存储桶、对象) ├── workers/ # 后台线程(QThread 异步操作) ├── views/ # UI 视图(PySide6 控件) ├── resources/ # 样式表等静态资源 ├── main.py # 程序入口 └── build_exe.py # 打包脚本 ``` ## 环境要求 - Python 3.10+ - PySide6 >= 6.5 - minio >= 7.2 - rclone(可选,挂载功能需要) ## 快速开始 ```bash # 安装依赖 pip install -r requirements.txt # 启动程序 python main.py # 打包为 exe python build_exe.py ``` ## 使用说明 1. 启动后点击工具栏 **连接** 按钮或菜单 **文件 → 连接管理** 2. 填写 MinIO 服务器地址(如 `192.168.5.30:9000`)、Access Key、Secret Key 3. 点击 **测试连接** 验证连通性,成功后点击 **连接** 4. 左侧选择存储桶,中间区域浏览文件,右侧查看详情/预览 ## 许可证 MIT License