关于 feishu-docx
feishu-docx 是用于导出和操作飞书及 Lark 文档的命令行工具,可将内容转换为 Markdown,并支持批量导出 Wiki、浏览器访问及文档写入和更新。
主要功能
- 01将文档、表格和多维表格导出为 Markdown
- 02批量导出 Wiki 空间
- 03通过浏览器会话读取可访问文档
- 04创建、追加和更新文档内容
- 05管理云盘文件和权限
适用场景
- 01为 AI 分析准备飞书文档
- 02备份整个 Wiki 空间
- 03导出带本地资源的公开文档
- 04通过块 ID 更新文档特定部分
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ leemysw/ feishu-docx --skill feishu-docx安装后在 Claude Code 中输入/feishu-docx确认已加载。
详细介绍
飞书文档导出器
将飞书/Lark 云文档导出为 Markdown,用于 AI 分析、写作和自动化。
一次性设置
pip install feishu-docx
feishu-docx config set --app-id YOUR_APP_ID --app-secret YOUR_APP_SECRET
Token 会自动刷新,无需用户交互。
可选功能拆分为额外组件,以保持核心安装轻量。在 zsh 等 Shell 中,请将额外组件括在引号中。
可选:基于浏览器的导出
export-browser 需要 Playwright 和 Chromium 运行时:
pip install 'feishu-docx[browser]'
playwright install chromium
可选:PDF 导出
PDF 导出需要 pdf extra:
pip install 'feishu-docx[pdf]'
导出文档
feishu-docx export "<FEISHU_URL>" -o ./output
导出的 Markdown 文件将以文档标题作为文件名保存。
如果文档是公开的,或只能在当前浏览器会话中读取,建议使用:
feishu-docx export-browser "<FEISHU_OR_LARK_URL>" -o ./output
或者复用现有的 Playwright 会话:
feishu-docx export-browser "<FEISHU_OR_LARK_URL>" --storage-state ./storage_state.json
支持的文档类型
- docx:飞书云文档 → Markdown(含图片)
- sheet:电子表格 → Markdown 表格
- bitable:多维表格 → Markdown 表格
- wiki:知识库节点 → 自动解析并导出
- 公开/可通过浏览器读取的文档:基于浏览器导出,并下载本地图片和附件
命令参考
| 命令 | 说明 |
|---|---|
feishu-docx export <URL> | 将文档导出为 Markdown |
feishu-docx export <URL> --pdf | 将文档导出为 Markdown 和 PDF |
feishu-docx export-browser <URL> | 在真实浏览器会话中导出,并保存本地资源 |
feishu-docx export-wechat <URL> | 将微信公众号文章导出为 Markdown |
feishu-docx create <TITLE> | 创建新文档 |
feishu-docx create --url <URL> | 根据微信公众号文章创建文档 |
feishu-docx write <URL> | 向文档追加内容 |
feishu-docx update <URL> | 更新指定区块 |
feishu-docx drive ls | 列出应用或个人云空间文件 |
feishu-docx drive perm-show <TOKEN> | 显示公开权限 |
feishu-docx drive perm-members <TOKEN> | 列出权限成员 |
feishu-docx drive clear | 清空文件(需二次确认) |
feishu-docx export-wiki-space <URL> | 批量导出整个知识库空间 |
feishu-docx export-workspace-schema <ID> | 导出多维表格数据库架构 |
feishu-docx auth | OAuth 授权 |
feishu-docx config set | 设置凭据 |
feishu-docx config show | 显示当前配置 |
feishu-docx config clear | 清除 Token 缓存 |
feishu-docx tui | 交互式 TUI 界面 |
示例
导出知识库页面
feishu-docx export "https://xxx.feishu.cn/wiki/ABC123" -o ./docs
使用自定义文件名导出文档
feishu-docx export "https://xxx.feishu.cn/docx/XYZ789" -o ./docs -n meeting_notes
在真实浏览器会话中导出公开或可通过浏览器读取的文档
feishu-docx export-browser "https://xxx.larkoffice.com/wiki/ABC123" -o ./browser_docs
将文档导出为 PDF
feishu-docx export "https://xxx.feishu.cn/docx/XYZ789" --pdf
直接读取内容(推荐用于 AI Agent)
# Output content to stdout instead of saving to file
feishu-docx export "https://xxx.feishu.cn/wiki/ABC123" --stdout
# or use short flag
feishu-docx export "https://xxx.feishu.cn/wiki/ABC123" -c
导出区块 ID(用于后续更新)
# Include block IDs as HTML comments in the Markdown output
feishu-docx export "https://xxx.feishu.cn/wiki/ABC123" --with-block-ids
# or use short flag
feishu-docx export "https://xxx.feishu.cn/wiki/ABC123" -b
批量导出整个知识库空间
# Export all documents in a wiki space (auto-extract space_id from URL)
feishu-docx export-wiki-space "https://xxx.feishu.cn/wiki/ABC123" -o ./wiki_backup
# Specify depth limit
feishu-docx export-wiki-space "https://xxx.feishu.cn/wiki/ABC123" -o ./docs --max-depth 3
# Export with Block IDs for later updates
feishu-docx export-wiki-space "https://xxx.feishu.cn/wiki/ABC123" -o ./docs -b
导出数据库架构
# Export bitable/workspace database schema as Markdown
feishu-docx export-workspace-schema <workspace_id>
# Specify output file
feishu-docx export-workspace-schema <workspace_id> -o ./schema.md
编写文档(CLI)
创建文档
# Create empty document
feishu-docx create "我的笔记"
# Create with Markdown content
feishu-docx create "会议记录" -c "# 会议纪要\n\n- 议题一\n- 议题二"
# Create from Markdown file
feishu-docx create "周报" -f ./weekly_report.md
# Create in specific folder
feishu-docx create "笔记" --folder fldcnXXXXXX
# Create from a WeChat article URL
feishu-docx create --url "https://mp.weixin.qq.com/s/xxxxx"
如何获取文件夹 token:
- 在浏览器中打开目标文件夹
- 从 URL 中提取 token:
https://xxx.feishu.cn/drive/folder/fldcnXXXXXX fldcnXXXXXX就是文件夹 token
向现有文档追加内容
# Append Markdown content
feishu-docx write "https://xxx.feishu.cn/docx/xxx" -c "## 新章节\n\n内容"
# Append from file
feishu-docx write "https://xxx.feishu.cn/docx/xxx" -f ./content.md
管理云盘文件
# List app cloud-space documents
feishu-docx drive ls --auth-mode tenant --type docx
# List personal cloud-space documents
feishu-docx drive ls --auth-mode oauth --type docx
# Show public permission
feishu-docx drive perm-show "https://xxx.feishu.cn/docx/ABC123"
# List permission members
feishu-docx drive perm-members "https://xxx.feishu.cn/docx/ABC123"
# Clear files with double confirmation
feishu-docx drive clear --type docx
更新指定区块
# Step 1: Export with Block IDs
feishu-docx export "https://xxx.feishu.cn/docx/xxx" -b -o ./
# Step 2: Find block ID from HTML comments
#
# # Heading
#
# Step 3: Update the specific block
feishu-docx update "https://xxx.feishu.cn/docx/xxx" -b blk123abc -c "新内容"
AI Agent 提示:需要更新特定章节时:
- 使用
-b导出,以获取区块 ID- 从 HTML 注释中找到目标区块 ID
- 使用
feishu-docx update和该区块 ID
提示
- 有本地资源时,图片和附件会自动下载到
{doc_title}/文件夹 - 对于公开分享链接或可通过浏览器读取的文档,建议使用
export-browser - 使用
--stdout或-c直接输出内容(推荐用于 Agent) - 使用
-b导出区块 ID,以便后续更新 - Token 会自动刷新,无需重新授权
- 对于 Lark(海外版):添加
--lark标记 tenant_access_token用于管理应用云空间,user_access_token用于管理个人云空间
评论
支持 Markdown