news 2026/8/21 6:05:45

打通微信与Obsidian:构建自动化信息收集与知识管理工作流

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打通微信与Obsidian:构建自动化信息收集与知识管理工作流

这次我们来看一个能极大提升知识管理效率的工具组合:如何将微信里的内容一键导入 Obsidian。对于重度使用微信获取信息、又依赖 Obsidian 构建个人知识库的用户来说,手动复制粘贴、整理格式是最大的痛点。这个流程的核心不是某个单一软件,而是一套结合了剪藏工具、格式转换和 Obsidian 插件的自动化方案。

它最核心的价值在于:打通从碎片化信息收集到结构化知识沉淀的最后一公里。你不再需要来回切换应用,只需在微信中完成分享或收藏动作,内容就能自动以整洁的 Markdown 格式出现在你的 Obsidian 仓库中,并附带来源、时间等元数据。本文将为你拆解从环境准备、工具选型、配置联动到最终验证的完整操作流程,目标是让你看完就能部署成功。

无论你是想收藏公众号文章、保存聊天记录中的关键信息,还是归档各种链接,这套方法都能显著提升你的信息处理效率。下面,我们将从核心工具链讲起,一步步实现微信到 Obsidian 的无缝流转。

1. 核心能力速览

在深入细节前,我们先通过下表快速了解这套方案的核心特性和要求:

能力项说明
核心功能将微信内的公众号文章、聊天文字、图片、链接等内容,一键保存至本地 Obsidian 知识库,并自动转换为 Markdown 格式。
核心工具链通常涉及三大环节:1.微信端剪藏工具(如 WeChat2Notion、浮图等);2.格式转换/中转服务(如简悦、Cubox 的 API);3.Obsidian 插件与自动化(如 Obsidian URI、QuickAdd、Templater 等)。
数据流转路径微信 → (剪藏工具) → 云端/本地中转 → (API/脚本) → Obsidian 指定文件夹
输出格式标准 Markdown (.md) 文件,可包含标题、正文、图片(本地化或图床链接)、元数据(如来源、标签、创建日期)。
自动化程度可实现高度自动化,从微信分享到 Obsidian 内生成笔记,无需手动干预。
主要依赖Obsidian 软件、特定插件、网络请求能力(用于调用 API)、本地脚本执行环境(如 Python、Node.js)。
适合场景日常碎片信息收集、公众号文章归档、研究资料整理、构建个人第二大脑工作流。
不适合场景需要极高实时性(秒级同步);完全离线环境;对微信聊天记录进行大规模、合规性存证(此场景需专业工具)。

2. 适用场景与使用边界

这套方案主要服务于内容创作者、研究者、学生以及任何希望系统化管理信息的个人。它的价值在于将微信这个高频信息入口,与 Obsidian 这个强大的知识处理中心连接起来。

它能解决什么问题:

  1. 信息碎片化:微信中看到的优质公众号文章、深度讨论,转眼就淹没在信息流中。此方案能将其即时保存,避免遗忘。
  2. 格式整理耗时:手动从微信复制内容到 Obsidian,需要清理排版、下载图片、添加标题,过程繁琐。自动化流程能完成这些重复劳动。
  3. 知识关联断层:手动保存的内容是孤立的。通过配合 Obsidian 的标签、双链功能,可以在保存时就初步分类,便于日后与已有知识关联。

使用边界与注意事项:

  1. 内容版权与隐私:请仅用于保存个人学习、研究所需的公开信息或自己参与创作的内容。切勿用于批量抓取、传播未经授权的付费内容或他人隐私信息,务必遵守相关法律法规和平台用户协议。
  2. 工具稳定性:依赖第三方剪藏工具或中转服务时,其 API 可能变更,需要一定的维护成本。自建方案稳定性更高,但技术门槛也相应提升。
  3. 复杂内容处理:对于公众号文章中复杂的交互式组件、特殊排版或加密内容,转换效果可能不完美,可能需要后期手动调整。
  4. 系统权限:部分自动化脚本可能需要访问本地文件系统或网络,在安全软件中需放行。

3. 环境准备与前置条件

在开始配置前,请确保你的设备满足以下基础条件:

  1. 操作系统:Windows 10/11, macOS, 或 Linux。方案的核心是 Obsidian 和脚本,跨平台兼容性好。
  2. Obsidian 安装:已在电脑上安装并配置好 Obsidian。确保你熟悉 Obsidian 的基本操作,如创建仓库、打开插件市场等。
  3. Node.js 或 Python 环境(可选但推荐):许多自动化脚本或 Obsidian 插件依赖这些运行时。建议安装 Node.js (LTS 版本) 或 Python 3.8+,并将其添加到系统环境变量。
  4. 网络环境:方案中若涉及调用云端 API(如简悦、Cubox),需要稳定的网络连接。自建本地服务则对网络无要求。
  5. 微信客户端:PC 版或手机版微信均可。通常手机微信的“分享”功能是触发保存的起点。
  6. 文本编辑器:用于编写和修改配置文件、脚本,如 VS Code、Sublime Text 等。

4. 安装部署与启动方式

实现“微信到 Obsidian”的自动化,主要有两种路径:利用现有SaaS工具链纯本地自建方案。我们将分别介绍。

4.1 方案一:利用现有工具链(以“简悦 + Obsidian”为例)

这是相对省心、适合大多数用户的方案。简悦 (SimpRead) 是一个优秀的网页剪藏工具,其“稍后读”服务支持 API,可以将内容推送至 Obsidian。

步骤 1: 安装并配置简悦

  1. 在浏览器(Chrome/Edge/Firefox)中安装简悦扩展。
  2. 注册并登录简悦账号,激活“稍后读”功能。
  3. 在简悦后台,找到“自动化”或“API”设置,生成一个 API Token(密钥)。记下这个 Token。

步骤 2: 在 Obsidian 中安装插件

  1. 打开 Obsidian,进入“设置” -> “社区插件”,关闭安全模式,浏览社区插件市场。
  2. 搜索并安装以下插件(可能需要组合使用):
    • QuickAdd:用于快速捕获内容并执行模板。
    • Templater:强大的模板插件,用于定义笔记的生成格式。
    • Advanced URI(可选):用于更精细地控制通过 URI 创建笔记。
  3. 安装后启用这些插件。

步骤 3: 创建 Obsidian 模板在 Obsidian 仓库中创建一个模板文件,例如微信剪藏模板.md,内容如下:

--- tags: [微信, 剪藏] source: {{source_url}} date: {{date}} --- # {{title}} {{content}}

这里的{{title}}{{content}}等是占位符,将由后续脚本填充。

步骤 4: 编写自动化脚本(Node.js示例)在本地创建一个脚本文件,如wechat_to_obsidian.js。这个脚本的作用是:监听一个本地 HTTP 服务,接收从手机分享过来的链接,调用简悦 API 解析链接,然后将解析后的内容按照模板写入 Obsidian。

const express = require('express'); const axios = require('axios'); const fs = require('fs').promises; const path = require('path'); const app = express(); app.use(express.json()); // 配置项 const OBSIDIAN_VAULT_PATH = '/path/to/your/obsidian/vault'; // 你的 Obsidian 仓库绝对路径 const SIMPREAD_TOKEN = '你的简悦API_TOKEN'; const TEMPLATE_PATH = path.join(OBSIDIAN_VAULT_PATH, 'Templates/微信剪藏模板.md'); app.post('/save', async (req, res) => { try { const { url } = req.body; // 假设从微信分享过来的数据包含 url if (!url) { return res.status(400).send('Missing URL'); } // 1. 调用简悦 API 解析文章 const parseRes = await axios.get(`https://simpread.me/api/v3/parser?url=${encodeURIComponent(url)}&token=${SIMPREAD_TOKEN}`); const article = parseRes.data; // 2. 读取模板文件 let templateContent = await fs.readFile(TEMPLATE_PATH, 'utf-8'); // 3. 替换模板变量 const noteContent = templateContent .replace(/{{title}}/g, article.title || '无标题') .replace(/{{content}}/g, article.content || '') .replace(/{{source_url}}/g, url) .replace(/{{date}}/g, new Date().toISOString().split('T')[0]); // 4. 生成文件名并保存 const fileName = `${article.title || '未命名'}.md`.replace(/[\\/:*?"<>|]/g, '_'); const filePath = path.join(OBSIDIAN_VAULT_PATH, 'Inbox', fileName); // 保存到 Inbox 文件夹 await fs.writeFile(filePath, noteContent, 'utf-8'); console.log(`已保存: ${filePath}`); res.send({ success: true, path: filePath }); } catch (error) { console.error('保存失败:', error); res.status(500).send({ success: false, error: error.message }); } }); const PORT = 3000; app.listen(PORT, () => { console.log(`服务运行在 http://localhost:${PORT}`); });

步骤 5: 配置微信快捷指令(以 iOS 快捷指令为例)在 iPhone 上,你可以创建一个“快捷指令”:

  1. 操作:获取“剪贴板”内容。
  2. 操作:获取“URL”从“剪贴板”。
  3. 操作:获取“URL 的内容”(选择“仅获取文章”)。
  4. 操作:通过“获取 URL 内容”将文章 URL POST 到你的本地服务地址(如http://你的电脑IP:3000/save)。
  5. 在微信中看到文章,复制链接,运行此快捷指令即可。

4.2 方案二:纯本地自建方案(更可控)

如果你不希望依赖简悦等第三方服务,可以尝试完全本地的方案,核心是使用readabilitynewspaper3k这样的本地库来解析文章。

步骤 1: 安装本地解析库

# 使用 Python 环境 pip install readability-lxml requests # 或者使用 newspaper3k pip install newspaper3k

步骤 2: 编写本地 Python 脚本创建一个local_parser.py脚本:

import sys import json import requests from readability import Document import markdownify from pathlib import Path from datetime import datetime def parse_article(url): """使用 readability 解析文章""" response = requests.get(url, headers={'User-Agent': 'Mozilla/5.0'}) doc = Document(response.text) title = doc.title() content_html = doc.summary() # 将 HTML 内容转换为 Markdown content_md = markdownify.markdownify(content_html, heading_style="ATX") return { 'title': title, 'content': content_md, 'url': url, 'date': datetime.now().strftime('%Y-%m-%d') } if __name__ == '__main__': if len(sys.argv) > 1: url = sys.argv[1] article = parse_article(url) # 这里可以替换为直接写入 Obsidian 文件夹的逻辑 print(json.dumps(article, ensure_ascii=False, indent=2)) else: print("请提供文章URL")

步骤 3: 与 Obsidian 联动你可以修改上述脚本,使其解析后直接生成 Markdown 文件到 Obsidian 的特定文件夹。或者,仍然通过一个本地 HTTP 服务(如用 Flask 或 FastAPI 重写)来接收微信分享的请求,流程与方案一类似,只是解析环节换成了本地库。

5. 功能测试与效果验证

配置完成后,必须进行端到端的测试,确保每个环节都畅通。

5.1 测试准备

  1. 准备一篇微信公众号文章,复制其链接。
  2. 确保你的本地脚本服务已启动(例如node wechat_to_obsidian.jspython app.py)。
  3. 打开 Obsidian,确保能实时刷新看到目标文件夹(如Inbox)。

5.2 测试步骤与预期结果

测试用例 1:通过快捷指令/分享保存公众号文章

  1. 操作:在手机微信中打开一篇公众号文章,点击右上角“...” -> “复制链接”。
  2. 操作:运行你配置好的 iOS 快捷指令(或 Android 上的类似自动化工具如 Tasker)。
  3. 预期结果
    • 快捷指令应显示执行成功。
    • 观察运行脚本的命令行窗口,应有类似“已收到请求,正在解析...”的日志。
    • 稍等片刻(取决于网络和文章大小),在 Obsidian 的Inbox文件夹中应出现一个新的.md文件。
  4. 验证成功标准
    • 新文件以文章标题命名。
    • 文件内容为整洁的 Markdown 格式,包含完整的文章正文。
    • 图片是否成功处理?可能是本地相对路径、图床链接或 Base64 嵌入,这取决于你的解析工具配置。
    • 元数据(如来源 URL、创建日期、标签)是否正确写入 Frontmatter。

测试用例 2:直接调用本地 API 测试如果你搭建了本地 HTTP 服务,可以用curl或 Postman 直接测试,这是排查问题最直接的方式。

# 使用 curl 测试 curl -X POST http://localhost:3000/save \ -H "Content-Type: application/json" \ -d '{"url":"https://mp.weixin.qq.com/s/某篇文章ID"}'

预期返回一个 JSON,包含{“success”: true, “path”: “...”},并在 Obsidian 中看到新文件。

测试用例 3:保存纯文本或聊天记录对于非链接的纯文本,流程需要调整。你可以在快捷指令中,将剪贴板文本直接作为参数发送给你的服务,然后在服务端将其包装成 Markdown 文件保存。这需要修改脚本以处理text/plain类型的内容。

5.3 常见失败原因与排查

  • 服务未启动:检查脚本是否在运行,端口是否被占用(netstat -ano | findstr :3000)。
  • 网络问题:电脑和手机是否在同一局域网?防火墙是否阻止了端口访问?
  • API Token 错误:如果使用简悦,检查 Token 是否填写正确且未过期。
  • 解析失败:某些网站有反爬机制,可能导致解析库无法获取正文。尝试更换 User-Agent 或使用更复杂的解析工具。
  • 文件写入权限:检查脚本中配置的 Obsidian 仓库路径是否有写入权限。
  • Obsidian 未刷新:Obsidian 有时需要手动点击刷新文件夹或重启才能看到新文件。

6. 接口 API 与批量任务

当你搭建好本地服务后,它就成为了一个内容输入 API,这为批量处理和集成其他工具提供了可能。

6.1 API 接口说明

以方案一的 Node.js 服务为例,它提供了一个简单的 POST 接口:

  • 端点POST /save
  • 请求体 (JSON){“url”: “文章链接”}{“text”: “纯文本内容”, “title”: “自定义标题”}
  • 响应{“success”: true/false, “path”: “文件路径”, “error”: “错误信息”}

6.2 批量导入历史文章

如果你有很多已收藏的微信文章链接,可以写一个简单的脚本进行批量导入。

import requests import json import time api_url = "http://localhost:3000/save" with open('saved_articles.txt', 'r', encoding='utf-8') as f: # 假设每行一个链接 urls = [line.strip() for line in f if line.strip()] for url in urls: print(f"正在处理: {url}") try: resp = requests.post(api_url, json={"url": url}, timeout=30) result = resp.json() if result.get('success'): print(f"成功: {result.get('path')}") else: print(f"失败: {result.get('error')}") except Exception as e: print(f"请求异常: {e}") time.sleep(2) # 避免请求过快

6.3 集成到其他工作流

这个本地 API 可以成为你自动化工作流的一个节点。例如,你可以结合 IFTTT、Zapier 或 n8n,设定规则如“当我在 Telegram 收藏一条消息时,自动发送到 Obsidian 服务”。关键在于将触发事件的信息(链接或文本)通过 HTTP 请求发送给你的本地服务。

7. 资源占用与性能观察

这套方案对系统资源的需求极低,主要关注点在于稳定性和响应速度。

  1. CPU/内存占用:运行一个简单的 Node.js 或 Python HTTP 服务,内存占用通常在几十 MB 到百 MB 左右,CPU 占用几乎可忽略,除非同时进行大量文章解析。
  2. 网络流量:如果使用云端解析服务(如简悦),每次保存会产生一次对外网的 API 请求。纯本地解析则只在你访问文章链接时产生流量。
  3. 磁盘空间:保存的 Markdown 文件本身很小。需要注意的是图片处理策略:如果选择将图片下载到本地,会占用较多空间;如果使用图床链接,则只保存链接,不占本地空间。
  4. 响应时间:从触发保存到 Obsidian 中出现文件,延迟主要取决于:
    • 网络状况(手机到电脑,电脑到解析服务)。
    • 文章解析时间(复杂页面较慢)。
    • 图片处理时间(下载图片较慢)。
    • 通常这个过程在 2 到 10 秒内完成是可接受的。

性能优化建议

  • 图片处理:对于公众号文章,图片通常托管在微信 CDN,直接使用原图链接在 Markdown 中引用是最高效的方式,无需下载。确保你的解析工具能保留正确的图片 URL。
  • 服务常驻:可以将脚本配置为系统服务(如 macOS 的 launchd, Linux 的 systemd, Windows 的服务)或使用pm2(Node.js) 管理,确保开机自启、崩溃重启。
  • 队列处理:如果遇到批量任务,建议在脚本中加入简单的任务队列,避免并发请求导致解析失败或资源耗尽。

8. 常见问题与排查方法

在部署和使用过程中,你可能会遇到以下问题:

问题现象可能原因排查方式解决方案
手机快捷指令执行失败,提示“无法连接到服务器”1. 电脑本地服务未运行。
2. 电脑防火墙阻止了端口。
3. 手机和电脑不在同一网络。
1. 在电脑上检查服务进程。
2. 在电脑上用curl localhost:3000测试。
3. 在手机浏览器访问http://电脑IP:3000看是否通。
1. 启动服务。
2. 在防火墙中放行对应端口。
3. 将手机和电脑连接到同一 Wi-Fi。
服务运行正常,但 Obsidian 里没有新文件1. Obsidian 仓库路径配置错误。
2. 脚本没有写入权限。
3. Obsidian 未刷新文件列表。
1. 检查脚本中OBSIDIAN_VAULT_PATH是否绝对路径且正确。
2. 尝试手动在该路径创建文件,看是否有权限。
3. 在 Obsidian 中按Ctrl+R(Cmd+R) 刷新。
1. 修正仓库路径。
2. 以管理员/适当权限运行脚本,或修改文件夹权限。
3. 重启 Obsidian。
保存的文章内容乱码或格式错乱1. 网页编码问题。
2. 解析库对特定网站兼容性差。
3. HTML 到 Markdown 转换失败。
1. 查看原始网页的编码。
2. 尝试用其他解析库或直接使用简悦等成熟服务。
3. 检查markdownify等转换工具的选项。
1. 在解析请求中指定编码。
2. 更换或组合使用解析方案。
3. 调整转换参数,或考虑保留部分 HTML 标签。
图片无法显示1. 图片链接是相对路径。
2. 图片链接需要特定 Referer 或 Cookie。
3. 图片被下载到了错误路径。
1. 检查生成的 Markdown 中图片链接是否完整。
2. 尝试在浏览器中直接打开图片链接看是否需要权限。
1. 在解析时补全图片的绝对 URL。
2. 对于防盗链图片,可考虑在解析请求中携带合适的 Headers,或使用图床中转。
3. 统一使用图床服务管理图片。
解析服务返回错误(如 403)目标网站有反爬机制。查看解析服务的错误日志,确认是否是访问被拒绝。1. 为请求添加更真实的 User-Agent 和 Headers。
2. 使用付费的、更稳定的解析服务。
3. 考虑手动保存该网站内容。
批量处理时部分失败1. 网络波动。
2. 某些网站解析超时。
3. 触发了频率限制。
查看失败请求的具体错误信息。1. 在脚本中增加重试机制和更长的超时时间。
2. 在批量任务中加入更长的间隔(如 5 秒)。
3. 记录失败链接,稍后手动处理。

9. 最佳实践与使用建议

为了让这套工作流长期稳定运行,并真正提升你的知识管理效率,建议遵循以下实践:

  1. 先测试,后量产:部署完成后,先用几篇不同类型的文章(纯文字、多图、长文、带视频)进行测试,确保流程稳定、格式满意,再投入日常使用。
  2. 明确保存目的地:在 Obsidian 中建立一个专门的文件夹(如Inbox/微信剪藏)来接收这些内容。配合插件如QuickAdd,你可以定义更复杂的规则,例如根据文章关键词自动添加标签或移动到不同文件夹。
  3. 定期整理与加工:自动化保存只是第一步。建议定期(如每周)回顾Inbox中的内容,进行精读、高亮、添加自己的评论,并通过双链[[ ]]将其与已有笔记关联起来,完成从信息收集到知识内化的过程。
  4. 备份与版本控制:Obsidian 仓库本身是纯文本文件,非常适合用 Git 进行版本管理。定期提交更改到 GitHub 或 Gitee 等平台,既是备份,也能追溯知识演进的过程。
  5. 关注工具链更新:如果你依赖第三方服务(如简悦的 API),请关注其官方公告,API 变更时可能需要调整你的脚本。
  6. 隐私与安全:你的本地服务监听在一个端口上,确保只在可信的局域网内运行,不要将其暴露在公网。如果脚本中使用了 API Token 等敏感信息,不要将其上传到公开的代码仓库。
  7. 保持简单:工作流在满足需求的前提下应尽可能简单。每增加一个环节,就多一个可能出错的地方。如果当前方案已足够流畅,不必过度追求全自动化。

10. 总结与下一步

实现“微信内容一键进 Obsidian”的核心,在于构建一个可靠的中转处理环节,它负责接收信息、解析内容、格式化并持久化。本文介绍了从利用现有 SaaS 工具链到纯本地自建两种主要路径,你可以根据自己的技术偏好和隐私要求进行选择。

最值得优先尝试的,是方案一中的简悦 API 配合本地脚本服务。它平衡了易用性、解析质量和可控性。你最先应该验证的功能就是“分享一篇公众号文章到 Obsidian”的完整闭环。最容易踩的坑通常是网络环境(手机与电脑互通)和文件路径权限,按照第 8 节的排查方法大部分能解决。

成功搭建后,你的信息流将变得无比顺畅:在微信中看到任何有价值的内容,一次分享操作,它就会自动出现在你的知识库待处理区。这不仅仅是节省了几次点击,更是将收集动作的“摩擦成本”降到几乎为零,让你更愿意去保存和积累碎片知识。

下一步,你可以探索更高级的集成:

  • 内容预处理:在保存前,用 AI 接口(如大模型 API)自动生成摘要、提取关键词或打标签。
  • 多渠道输入:将同样的服务适配到其他平台,如微博、知乎、RSS 阅读器,打造统一的信息收集入口。
  • 自动化分类:结合 Obsidian 的 Dataview 插件,根据内容自动将其归类到不同的 MOC (Map of Content) 中。

从信息碎片到知识体系,关键的第一步是让收集变得无比简单。现在,你可以开始动手,搭建这条专属的信息高速公路了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 6:02:57

React 19 + DeepSeek-V4 构建WebAI应用:图表与公式渲染实战

最近在开发一个需要集成AI能力的Web应用时&#xff0c;遇到了一个典型问题&#xff1a;如何将前沿的大语言模型&#xff08;LLM&#xff09;能力无缝、优雅地嵌入到现代前端应用中&#xff0c;并实现复杂的交互式数据可视化&#xff1f;传统的方案要么是前后端分离&#xff0c;…

作者头像 李华
网站建设 2026/8/21 5:59:20

从tmux迁移到herdr:现代终端会话管理实战指南

在终端复用工具的选择上&#xff0c;很多开发者都曾面临一个经典难题&#xff1a;是继续使用功能强大但配置复杂的tmux&#xff0c;还是寻找一个更现代、更轻量的替代品&#xff1f;如果你也厌倦了记忆繁琐的tmux快捷键&#xff0c;或者希望终端会话管理能更直观、更符合现代工…

作者头像 李华
网站建设 2026/8/21 5:58:49

SpringBoot校园求职导师系统设计与实现

1. 项目概述&#xff1a;校园求职导师系统设计与实现这个基于SpringBoot的校园求职导师系统&#xff0c;是我去年指导计算机专业学生完成的毕业设计项目。它本质上是一个面向高校学生的职业发展服务平台&#xff0c;通过整合企业招聘需求、校友资源和职业指导功能&#xff0c;帮…

作者头像 李华
网站建设 2026/8/21 5:57:32

FineBI实战:从Excel到自助数据分析平台的思维转变与核心应用

最近在帮一个朋友的公司做数据看板&#xff0c;他们之前一直用 Excel 做报表&#xff0c;业务部门提需求&#xff0c;IT 部门吭哧吭哧做&#xff0c;一个简单的销售漏斗分析&#xff0c;从提需求到拿到最终图表&#xff0c;周期能拉长到一周。朋友问我有没有什么工具能把这个流…

作者头像 李华
网站建设 2026/8/21 5:57:28

Maya插件GN Project Components To Live Surface:高效解决复杂曲面组件投射难题

这类插件最值得先看的不是功能列表&#xff0c;而是它能不能在你的 Maya 版本里稳定跑起来&#xff0c;以及它解决的“投射”问题是不是你当前建模流程里最卡脖子的那个。GN Project Components To Live Surface 这个插件&#xff0c;核心就是帮你把一堆分散的多边形组件&#…

作者头像 李华