From 991eec8cef968137808aceaa2c58514f12dbe2b9 Mon Sep 17 00:00:00 2001 From: beyondx123 <109916089+beyondx123@users.noreply.github.com> Date: Sun, 5 Jul 2026 13:21:51 +0800 Subject: [PATCH] first commit --- README.md | 128 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..597bae6 --- /dev/null +++ b/README.md @@ -0,0 +1,128 @@ +# 一堂文档采集工具 + +采集一堂创业课飞书文档,转换为带本地图片的 Markdown 文件。 + +## 工具说明 + +| 工具 | 适用场景 | +|---|---| +| `feishu-to-md.mjs` | 飞书 wiki 链接(`feishu.cn/wiki/...`) | +| `auto-scrape.mjs` | 一堂课平台链接(`yitang.top/fs-doc/...`) | + +--- + +## 环境准备 + +### 1. 安装 Node.js 依赖 + +```bash +npm install +``` + +### 2. 安装飞书 CLI + +```bash +npm install -g @larksuite/cli +``` + +### 3. 配置飞书 CLI(首次) + +```bash +# 初始化 App ID 和 Secret +echo "" | lark-cli config init \ + --app-id \ + --app-secret-stdin \ + --brand feishu + +# 发起个人授权(wiki + docs + drive 权限) +lark-cli auth login --domain wiki,docs,drive --no-wait --json +# → 复制输出中的 verification_url,在浏览器中完成扫码授权 +# → 授权完成后执行: +lark-cli auth login --device-code <上一步输出的 device_code> +``` + +--- + +## 采集飞书 wiki 文档 + +```bash +node feishu-to-md.mjs +``` + +**示例:** + +```bash +node feishu-to-md.mjs https://yitanger.feishu.cn/wiki/R9NywV2i9izjuqkPd63cWuafn4g +``` + +**输出:** + +- `output/<文档标题>.md` — Markdown 正文 +- `output/<文档标题>_files/` — 本地图片目录(PNG 格式) + +图片以相对路径引用,可在 Obsidian、Typora 等编辑器中离线展示。 + +**自定义输出目录:** + +```bash +node feishu-to-md.mjs ./my-docs +``` + +--- + +## 采集一堂课平台文档 + +```bash +node auto-scrape.mjs +``` + +**示例:** + +```bash +node auto-scrape.mjs https://yitang.top/fs-doc/abc123/docId +``` + +首次运行会弹出浏览器,完成微信扫码或手机验证码登录后,Cookie 自动保存,后续无需重复登录。 + +**输出:** `output/<文档标题>.md` + +--- + +## 文件结构 + +``` +scraper/ +├── feishu-to-md.mjs # 飞书 wiki 采集工具 +├── auto-scrape.mjs # 一堂课平台采集工具 +├── cookies.json # yitang.top 登录 cookie(自动生成) +├── feishu-cookies.json # 飞书 cookie(自动生成) +├── package.json +└── output/ # 所有输出文档 + ├── 文档标题.md + └── 文档标题_files/ + ├── image_1.png + └── ... +``` + +--- + +## 常见问题 + +**Q: 飞书采集提示未登录或 401?** + +重新授权: +```bash +lark-cli auth login --domain wiki,docs,drive --no-wait --json +``` + +**Q: 一堂课平台 Cookie 失效?** + +删除 `cookies.json` 后重新运行,会自动弹出浏览器重新登录: +```bash +rm cookies.json +node auto-scrape.mjs +``` + +**Q: 图片下载失败?** + +飞书图片需要有效的个人授权。确认 `lark-cli auth status` 显示已登录,且包含 `docs:document.media:download` 权限。