Skip to content

kobaridev/umami-csv-import

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 

Repository files navigation

Umami CSV 导入工具

🚀 一个简洁高效的 Umami CSV 数据导入工具,采用静态网站架构。

✨ 主要特性

  • 多数据库支持: MySQL 和 PostgreSQL
  • 📁 智能文件处理: CSV 文件编码自动检测
  • 🔧 简单配置: 直观的Web界面配置
  • 📜 脚本生成: 自动生成完整的Python导入脚本
  • 🔒 数据安全: 本地执行,数据不上传
  • 💰 零成本: 静态部署,无服务器费用

🚀 快速开始

  1. 访问工具: 打开网页工具
  2. 配置参数: 填写数据库连接信息和CSV文件设置
  3. 生成脚本: 点击按钮生成Python导入脚本
  4. 下载运行: 下载脚本到本地与CSV文件同目录运行

�️ 环境要求

本地环境

  • Python 3.6+
  • 必要的Python包:
    pip install pandas numpy pymysql psycopg2-binary

网络要求

  • 本地计算机能访问目标数据库服务器
  • 稳定的网络连接

📋 使用说明

数据库配置

  • 主机地址: 数据库服务器地址
  • 端口: MySQL(3306) / PostgreSQL(5432)
  • 用户名/密码: 数据库访问凭据
  • 数据库名: 目标数据库名称

CSV文件配置

  • 文件名: 本地CSV文件名称
  • 编码: 支持UTF-8、GBK或自动检测
  • Website ID: 目标网站标识符(可选)

� 技术架构

  • 前端: HTML + CSS + JavaScript
  • 部署: Cloudflare Pages 静态托管
  • 执行: 本地Python脚本
  • 数据流: 配置 → 脚本生成 → 本地执行

⚠️ 注意事项

  • 生成的脚本需要在本地运行,不是在网页上运行
  • 确保CSV文件与脚本在同一目录
  • 数据库连接信息仅用于脚本生成,不会上传
  • 建议在导入前备份数据库

📄 许可证

MIT License

🤝 贡献

欢迎提交 Issue 和 Pull Request!


� 隐私保护: 所有配置信息仅在浏览器本地处理,不会上传到任何服务器。

├── index.html          # 首页 - 项目入口和导航
├── advanced.html       # 高级配置 - 主要功能页面 
├── status.html         # 系统状态 - 实时监控页面
├── tech.html           # 技术说明 - 架构和原理说明
├── README.md           # 项目文档
└── CLOUD_DEPLOY.md     # 云端部署指南

💡 使用方法

快速开始

  1. 访问首页 (index.html)
  2. 点击"� 开始数据导入"进入高级配置页面
  3. 填写数据库配置信息
  4. 上传CSV文件
  5. 生成并下载Python脚本
  6. 在本地执行脚本完成数据导入

高级导入流程

  1. 进入高级配置页面 (advanced.html)
  2. 填写数据库连接信息:
    • 选择数据库类型 (MySQL/PostgreSQL)
    • 输入连接参数 (主机、端口、用户名、密码等)
    • 设置目标 Website ID
  3. 上传 CSV 文件
  4. 配置高级选项 (批处理大小、清空表等)
  5. 生成 Python 脚本
  6. 下载并在本地执行脚本

本地执行要求

# 确保本地已安装 Python 3.6+
python --version

# 安装依赖 (MySQL)
pip install pandas numpy pymysql

# 安装依赖 (PostgreSQL)  
pip install pandas numpy psycopg2-binary

# 运行生成的脚本
python umami_import.py

🔄 工作流程

  1. 在线配置: 在 Cloudflare Pages 上填写数据库配置
  2. 脚本生成: JavaScript 在浏览器中生成 Python 脚本
  3. 本地下载: 将生成的脚本下载到本地计算机
  4. 本地执行: 在本地 Python 环境中运行脚本进行数据导入

🌟 核心特性

数据库支持

  • MySQL: 完整的 pymysql 支持
  • PostgreSQL: psycopg2 驱动支持
  • 自动配置: 根据数据库类型自动调整连接参数

数据处理

  • 智能编码检测: 支持 UTF-8 和 GBK 编码
  • 批量处理: 可配置批处理大小优化性能
  • 数据验证: 导入前后数据验证
  • 错误处理: 完善的异常处理机制

用户体验

  • 响应式设计: 适配各种设备屏幕
  • 实时反馈: 进度条和状态更新
  • 直观界面: 现代化的用户界面设计
  • 中文支持: 完全中文化界面

🔧 部署说明

Cloudflare Pages 部署

  1. 将项目文件上传到 Git 仓库
  2. 在 Cloudflare Pages 中连接仓库
  3. 配置构建设置:
    • 构建命令: (无需构建)
    • 输出目录: /
  4. 部署完成后即可访问

本地开发

# 使用简单的 HTTP 服务器
python -m http.server 8000
#
npx serve .

📝 更新日志

v2.0.0 (最新版本)

  • ✅ 新增高级配置页面
  • ✅ 完整的数据库支持 (MySQL/PostgreSQL)
  • ✅ Python 脚本自动生成
  • ✅ 系统状态监控页面
  • ✅ 响应式界面优化
  • ✅ 实时日志和状态更新

v1.0.0

  • ✅ 基础 CSV 上传功能
  • ✅ SQL 生成演示
  • ✅ Cloudflare Pages 部署

🤝 贡献

欢迎提交 Issue 和 Pull Request 来改进这个项目。

📄 许可证

本项目采用 MIT 许可证。

🔗 相关链接


提示: 这是一个完全基于静态页面的解决方案,所有数据处理都在客户端完成,确保数据安全性。生成的 Python 脚本需要在您的本地环境中执行。

About

Umami 官方CSV数据导入自建Umami后端MySQL/PostgreSQL数据库

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages