360 Secure SkillHub
360 安全技能中心

Feishu PDF Uploader

该 Skill 提供 Python 脚本,按飞书云盘的 upload_prepare、upload_part、upload_finish 三步分片流程,把本地 PDF 或其他类型文件上传到指定文件夹 token 下,返回 file_token 等信息;凭证与文件夹 token 可来自命令行参数、环境变量或宿主配置,并说明 upload_part 无需 checksum 参数及常见错误码处理。

zheng-xiru
zheng-xiru
热度 43.44
最近更新 2026-05-11 17:36:11
分类:自动化依赖:代码执行 / 第三方 API / 读写文件应用场景:工作流 / 自动化脚本

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add feishu-pdf-uploader
Metadata
name
feishu-pdf-uploader
description
飞书PDF文件上传器 - 将本地PDF文件上传到飞书云盘。 使用飞书OpenAPI的upload_prepare → upload_part → upload_finish流程, 支持大文件分片上传。 Use when uploading PDF or any files to Feishu (Lark) cloud drive. Handles multipart/form-data upload without checksum parameter.
license
MIT
metadata
{"version":"1.0.0","tags":["feishu","lark","pdf","upload","cloud","drive"],"author":"kimi-claw","openclaw":{"emoji":"📤","requires":{"bins":["python3","python3-requests"],"config":["channels.feishu.accounts"]}}}

Feishu PDF Uploader | 飞书PDF上传器

上传本地PDF文件到飞书云盘。支持任意文件类型,不仅限于PDF。

Upload local PDF files (or any files) to Feishu (Lark) cloud drive.

快速开始 | Quick Start

python3 scripts/upload_pdf.py /path/to/file.pdf --folder-token FOLDER_TOKEN

使用方法 | Usage

命令行

python3 scripts/upload_pdf.py <file_path> [options]

Options:
  --folder-token    目标文件夹token (默认从环境变量读取)
  --app-id          飞书应用ID (默认从config读取)
  --app-secret      飞书应用密钥 (默认从config读取)

Python API

from upload_pdf import upload_file_to_feishu

result = upload_file_to_feishu(
    file_path="/path/to/file.pdf",
    folder_token="VnTdf2MNglfgPtdrhCxcSTdOnZd",
    app_id="cli_xxx",
    app_secret="xxx"
)
# Returns: {"success": True, "file_token": "...", "url": "..."}

工作原理 | How It Works

  1. Prepare - 调用 /drive/v1/files/upload_prepare 获取 upload_id
  2. Upload - 调用 /drive/v1/files/upload_part 上传文件内容
  3. Finish - 调用 /drive/v1/files/upload_finish 完成上传

关键技术点

⚠️ 重要:upload_part接口不需要 checksum 参数!

正确参数:

  • upload_id - 从prepare获取
  • seq - 分片序号(从0开始)
  • size - 文件大小(字节)
  • file - 文件内容(multipart/form-data)

❌ 错误:添加checksum参数 → 返回 1061002 params error ✅ 正确:只传upload_id/seq/size/file → 上传成功

配置 | Configuration

从OpenClaw配置自动读取:

  • channels.feishu.accounts[].appId
  • channels.feishu.accounts[].appSecret

错误处理 | Error Handling

错误码 原因 解决
1061002 params error 移除checksum参数
1062008 checksum param Invalid 不要传checksum
1061021 upload id expire 重新调用prepare

使用场景 | Use Cases

  • 上传投资报告PDF到飞书云盘
  • 备份生成的文档到云端
  • 批量文件上传自动化

安全说明 | Security

凭证仅用于获取tenant access token并上传文件。不会存储或传输到其他地方。