Skip to content

一个基于Python Tkinter的飞书多维表格图形化管理工具,提供直观易用的界面来管理飞书多维表格的字段和记录。

License

Notifications You must be signed in to change notification settings

AstraCoreLz/feishu-bitable-gui

Repository files navigation

飞书多维表格管理工具

一个基于Python Tkinter的飞书多维表格图形化管理工具,提供直观易用的界面来管理飞书多维表格的字段和记录。

✨ 功能特性

🎯 核心功能

  • 🔐 飞书认证管理: 支持App ID和App Secret认证
  • 📊 字段管理: 创建、查看、编辑、删除各种类型的字段
  • 📝 记录管理: 完整的记录增删改查功能
  • 🔍 智能搜索: 快速搜索和高级自定义条件搜索
  • 🎨 直观界面: 基于Tkinter的现代化图形界面
  • 📋 批量操作: 支持批量创建和管理记录
  • 🛡️ 权限检查: 自动检查和诊断API权限状态

🔧 字段类型支持

  • 📝 文本字段
  • 🔢 数字字段
  • ☑️ 单选/多选字段
  • 📅 日期时间字段
  • ✅ 复选框字段
  • 👤 人员字段
  • 🔗 超链接字段
  • 📍 地理位置字段
  • 📎 附件字段

🔍 搜索功能

  • 快速搜索: 关键词搜索所有文本字段
  • 高级搜索:
    • 多字段自定义条件组合
    • 支持AND/OR逻辑关系
    • 智能操作符(等于、包含、大于等)
    • 自定义排序和结果限制
    • 查询预览功能

🚀 快速开始

环境要求

  • Python 3.7+
  • tkinter (通常随Python安装)
  • 其他依赖包(见requirements.txt)

安装步骤

  1. 克隆项目
git clone https://github.com/zhangli091011/feishu-bitable-gui.git
cd feishu-bitable-gui
  1. 安装依赖
pip install -r requirements.txt
  1. 配置飞书应用
cp config.example.json config.json

编辑 config.json 文件,填入您的飞书应用信息:

{
  "app_id": "您的App ID",
  "app_secret": "您的App Secret", 
  "app_token": "您的多维表格App Token"
}
  1. 启动应用
python feishu_gui.py

📱 使用指南

1. 连接配置

  • 在"连接配置"选项卡中输入飞书应用信息
  • 点击"连接飞书"建立连接
  • 选择要管理的数据表

2. 字段管理

  • 在"字段管理"选项卡中查看现有字段
  • 点击"创建字段"添加新字段
  • 支持多种字段类型和配置选项
  • 可以编辑或删除现有字段

3. 记录管理

  • 在"记录管理"选项卡中查看和管理记录
  • 点击"创建记录"添加新数据
  • 双击记录进行编辑
  • 支持批量删除操作

4. 搜索功能

  • 快速搜索: 输入关键词快速查找
  • 高级搜索: 设置复杂的搜索条件
    • 选择字段和操作符
    • 设置多个条件组合
    • 自定义排序和限制

5. 权限检查

  • 点击"权限检查"按钮诊断API权限
  • 查看详细的权限状态报告
  • 根据提示配置必要的权限

🔧 配置说明

飞书应用配置

  1. 访问飞书开放平台
  2. 创建企业自建应用
  3. 获取App ID和App Secret
  4. 配置API权限范围:
    • bitable:app:readonly - 读取多维表格应用
    • bitable:table:readonly - 读取数据表
    • bitable:field:readwrite - 读写字段
    • bitable:record:readwrite - 读写记录

权限配置指南

应用需要以下权限才能正常工作:

  • 应用权限: 访问多维表格应用信息
  • 表格权限: 读取表格列表和信息
  • 字段权限: 创建、修改、删除字段
  • 记录权限: 创建、查询、修改、删除记录

详细的权限配置步骤请参考飞书开放平台文档。

📁 项目结构

feishu-bitable-gui/
├── feishu_gui.py              # 主界面程序
├── feishu_auth.py             # 飞书认证模块
├── feishu_bitable.py          # 多维表格字段管理
├── feishu_record.py           # 记录管理模块
├── feishu_data_builder.py     # 数据构建器
├── feishu_field_config.py     # 字段配置辅助
├── http_client.py             # HTTP客户端封装
├── field_dialogs.py           # 字段操作对话框
├── record_dialogs.py          # 记录操作对话框
├── search_dialogs.py          # 搜索对话框
├── permission_helper.py       # 权限检查辅助
├── requirements.txt           # 项目依赖
├── config.example.json        # 配置文件模板
├── SEARCH_GUIDE.md           # 搜索功能详细指南
└── README.md                 # 项目说明

🔍 搜索功能详解

快速搜索

适合日常快速查找,支持:

  • 在所有文本字段中搜索关键词
  • 指定单个字段搜索
  • 实时搜索结果展示

高级搜索

支持复杂的搜索条件:

操作符支持

字段类型 支持的操作符
文本 等于、不等于、包含、不包含、开头是、结尾是、为空、不为空
数字 等于、不等于、大于、大于等于、小于、小于等于、为空、不为空
选择 等于、不等于、包含、不包含、为空、不为空
日期 等于、不等于、大于、大于等于、小于、小于等于、为空、不为空
复选框 等于、不等于

搜索表达式示例

// 文本包含
SEARCH("项目", CurrentValue.[标题]) > 0

// 状态精确匹配
CurrentValue.[状态] = "进行中"

// 数值范围
CurrentValue.[分数] >= 80 AND CurrentValue.[分数] < 90

// 日期范围
CurrentValue.[创建时间] >= "2024-01-01"

❗ 常见问题

Q: 连接失败怎么办?

A: 请检查:

  1. App ID和App Secret是否正确
  2. 网络连接是否正常
  3. 飞书应用是否已启用

Q: 创建字段/记录时出现403错误?

A: 这通常是权限问题:

  1. 点击"权限检查"诊断权限状态
  2. 在飞书开放平台配置相应的API权限
  3. 确保应用已发布并获得管理员审批

Q: 搜索功能不工作?

A: 请确认:

  1. 选择的字段类型支持搜索
  2. 搜索表达式语法正确
  3. 字段名称拼写正确(区分大小写)

Q: 界面显示异常?

A: 可能的解决方案:

  1. 检查Python和tkinter版本
  2. 重启应用程序
  3. 检查系统显示缩放设置

📄 许可证

MIT License - 详见 LICENSE 文件

🤝 贡献

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

⭐ 如果这个项目对您有帮助,请给个Star支持一下!

About

一个基于Python Tkinter的飞书多维表格图形化管理工具,提供直观易用的界面来管理飞书多维表格的字段和记录。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages