当前位置: 首页 > article >正文

Python+Flask搭建属于自己的B站,管理自己电脑里面的视频文件。支持对文件分类、重命名、删除等操作。

适用场景
  • 个人用户:管理本地图片和视频文件,快速查找和分类。

  • 团队协作:共享文件分类标签,提升团队文件管理效率。

  • 教育机构:用于教学资源管理,方便教师和学生查找资料。

  • 企业应用:作为内部文件管理系统,支持批量操作和分类管理。

功能介绍
  • 文件浏览与播放:用户可以浏览本地图片和视频文件,并在线播放视频或查看大图。

  • 分类管理:支持自定义分类标签,用户可以为每个文件分配分类,方便快速筛选和查找。

  • 模糊搜索:通过文件名或分类标签进行关键字模糊搜索,快速定位目标文件。

  • 批量操作:支持批量分类、批量重命名和批量删除,提升文件管理效率。

  • 文件重命名:支持对单个文件进行重命名操作。

  • 双击查看大图:双击图片即可在模态框中查看大图,提升用户体验。

  • 分类标签筛选:点击分类标签即可自动筛选文件,无需手动输入或点击搜索按钮。

技术架构
  • 前端

    • HTML + CSS + JavaScript:构建用户界面,实现动态交互效果。

    • 模态框:用于查看大图,提升用户体验。

    • 响应式设计:适配不同设备屏幕,确保良好的用户体验。

  • 后端

    • Flask:轻量级 Python Web 框架,用于处理路由、请求和响应。

    • 文件操作:通过 Python 的 OS模块实现文件重命名、删除等操作。

    • JSON 数据存储:使用 JSON 文件存储分类标签和文件分类信息,简化数据管理。

  • 部署

    • 本地运行:通过 Flask 内置服务器快速启动应用。

    • 可扩展性:支持部署到云服务器(如 AWS、Heroku)或容器化(Docker)。

亮点
  1. 简洁高效的用户界面

    • 采用 B 站风格的暗色主题和卡片式布局,界面美观且易于操作。

    • 支持双击查看大图、分类标签筛选等交互功能,提升用户体验。

  2. 强大的文件管理功能

    • 支持批量操作(分类、重命名、删除),大幅提升文件管理效率。

    • 提供模糊搜索功能,快速定位目标文件。

  3. 灵活的扩展性

    • 基于 Flask 框架,代码结构清晰,易于扩展新功能。

    • 支持自定义分类标签,满足个性化需求。

  4. 轻量级与高性能

    • 使用 JSON 文件存储数据,无需依赖数据库,部署简单。

    • 通过 Python 的高效文件操作,确保系统运行流畅。

  5. 开源与可定制

    • 代码完全开源,用户可以根据需求自由定制功能。

    • 支持二次开发,适用于个人、团队或企业级文件管理需求。

核心代码:

app.py

from flask import Flask, render_template, send_from_directory, request, redirect, url_for, flash
import os
import json

app = Flask(__name__)
app.secret_key = 'your_secret_key'  # 用于 flash 消息

# 设置媒体文件目录
MEDIA_FOLDER = 'static/media'
DATA_FILE = 'data/media_data.json'
CATEGORIES_FILE = 'data/categories.json'

# 加载媒体文件分类数据
def load_media_data():
    if os.path.exists(DATA_FILE):
        with open(DATA_FILE, 'r') as f:
            return json.load(f)
    return {}

# 保存媒体文件分类数据
def save_media_data(data):
    with open(DATA_FILE, 'w') as f:
        json.dump(data, f, indent=4)

# 加载分类标签数据
def load_categories():
    if os.path.exists(CATEGORIES_FILE):
        with open(CATEGORIES_FILE, 'r') as f:
            return json.load(f)
    return []

# 保存分类标签数据
def save_categories(categorie

http://www.kler.cn/a/540138.html

相关文章:

  • Avnet RFSoC基于maltab得5G 毫米波 开发工具箱
  • UE5.5 PCGFrameWork--GPU CustomHLSL
  • Gitlab中如何进行仓库迁移
  • postgresql 游标(cursor)的使用
  • vscode预览插件
  • Spring AI -使用Spring快速开发ChatGPT应用
  • 日志统计(acWing,蓝桥杯)
  • PLSQL: 存储过程,用户自定义函数[oracle]
  • python-leetcode-组合总和
  • win10 llamafactory模型微调相关① || Ollama运行微调模型
  • 【论文阅读】Comment on the Security of “VOSA“
  • 并查集知识整理、蓝桥杯修改数组
  • 【vue】高德地图AMap.Polyline动态更新画折线,逐步绘制
  • 深度学习-神经机器翻译模型
  • 【1.05版】wordpressAI插件批量生成文章、图片、长尾关键词、文章采集、AI对话等
  • 软件工程 项目管理
  • 使用 mkcert 本地部署启动了 TLS/SSL 加密通讯的 MongoDB 副本集和分片集群
  • mysql 学习12 存储引擎,mysql体系结构
  • 技术栈选择:Vue 还是 React
  • gptme - 终端中的个人 AI 助手
  • 《一》深入了解软件测试工具 JMeter-自我介绍
  • 基于lstm+gru+transformer的电池寿命预测健康状态预测-完整数据代码
  • iOS Swift算法之KDF2
  • 【1】深入解析 SD-WAN:从思科 SD-WAN 视角看现代网络发展
  • 题解:P1005 [NOIP 2007 提高组] 矩阵取数游戏
  • win10向windows server服务器传输文件