基于扣子+飞书+DeepSeek的公众号文章智能处理工作流实战
1. 为什么你需要一个公众号文章智能处理工作流?
如果你是一个公众号运营者、内容创作者,或者是一个需要大量处理网络信息的办公族,我猜你一定遇到过这样的场景:老板或者客户甩给你一个文档,里面密密麻麻列了十几篇甚至几十篇公众号文章的链接,要求你“把这些文章的核心内容提炼一下,然后改写成我们自己的风格”。光是想想,是不是就觉得头皮发麻?
手动操作意味着什么?你需要一个个点开链接,一篇篇复制粘贴,然后逐字逐句地阅读、提炼、改写。这个过程不仅枯燥乏味,而且极其容易出错——你可能漏掉某篇文章,可能复制错了段落,也可能在重复劳动中消耗掉一整个下午的宝贵时间。更别提,当你费尽心力改完,交上去的稿子还可能因为风格不统一、语言不够通俗而被要求返工。
这就是我当初遇到的困境。直到我摸索出了一套自动化的工作流,才真正把自己从这种“体力活”中解放出来。今天我要分享的,就是这套我亲测有效、几乎零代码门槛的解决方案:基于扣子、飞书和DeepSeek的公众号文章智能处理工作流。
简单来说,这个工作流能帮你自动完成三件事:第一,批量抓取公众号文章链接;第二,自动提取这些文章里的标题和正文内容;第三,利用AI对提取的内容进行智能润色和改写。整个过程完全自动化,你只需要在开始时提供文章链接列表,泡杯咖啡的功夫,改写好的内容就已经整整齐齐地躺在你的表格里了。它特别适合需要批量处理竞品分析、内容聚合、素材整理或者日常简报的场景。哪怕你没有任何编程基础,跟着我的步骤一步步来,也绝对能搞定。
2. 核心工具三剑客:扣子、飞书与DeepSeek
在动手搭建之前,我们得先搞清楚手里的“兵器”都是干什么的。这三个工具各有分工,组合起来威力巨大。
扣子:你可以把它理解为一个可视化、低代码的自动化流程搭建平台。它的核心是“工作流”,就像乐高积木一样,我们把不同的功能模块(比如读取数据、执行代码、调用AI)用连线的方式组合起来,形成一个自动执行的流水线。我们整个智能体的“大脑”和“骨架”就在这里搭建。它的优势是界面友好,拖拖拽拽就能完成复杂的逻辑,完全不需要你写后端服务或者部署服务器。
飞书:这里我们主要用到飞书的两个功能:电子表格和多维表格。电子表格扮演了“原料仓库”的角色,我们一开始会把所有要处理的公众号文章链接都放在这里。而多维表格则是我们的“成品仓库”和“加工车间”。工作流会把从公众号提取出来的原始内容(标题和正文)先存进来,然后我们可以在多维表格里直接调用AI能力,对“内容”字段进行加工改写。飞书表格的协同和分享功能也让整个流程的协作变得非常方便。
DeepSeek:它是我们工作流里的“灵魂画手”,负责最核心的内容理解和改写工作。我选择DeepSeek的原因很简单:它的文本生成和理解能力非常强,特别是在中文语境下的润色和改写,能很好地保持原意的同时,让语言更流畅、更口语化。最关键的是,我们可以通过飞书多维表格的“探索字段捷径”功能直接调用它,无需复杂的API对接,简直是“开箱即用”。
这三个工具的关系,我打个比方:扣子是厨师长,负责指挥整个厨房的运作流程;飞书表格是备菜台和出菜口,负责接收原料和呈现成品;而DeepSeek就是那位手艺精湛的炒菜师傅,负责把原始食材加工成美味佳肴。 接下来,我们就进入厨房,开始一步步搭建这条自动化生产线。
3. 第一步:在扣子平台搭建工作流骨架
万事开头难,但只要第一步走稳了,后面就一马平川。我们首先要在扣子平台创建一个工作流,作为整个自动化流程的总控制器。
3.1 创建工作流与核心节点
首先,打开浏览器,访问扣子的官网并登录。在主页左侧菜单找到“工作空间”,进入你的个人空间后,选择“资源库”。你会看到一个“+资源”的按钮,点击它,然后选择“工作流”。这时会弹出一个创建窗口,给这个工作流起个名字,比如我叫它 get_public_platform,描述可以写“批量提取公众号文章内容并改写”。这个名字你自己能看懂就行,然后点击确认。
现在,你面前是一个空白的画布,只有一个“开始”节点。我们的目标是从这里开始,像搭积木一样,把流程搭建起来。整个流程的逻辑是这样的:先从飞书表格读取链接列表 -> 处理链接数据 -> 循环遍历每一个链接 -> 抓取该链接的文章内容 -> 将抓取到的内容写入飞书多维表格。
根据这个逻辑,我们需要依次添加以下节点:
- 插件节点(飞书电子表格):用于读取我们存放在飞书里的文章链接。点击画布底部的【+添加节点】,选择【插件】。在搜索框输入“飞书电子表格”,在结果里找到并选择
read_cols插件。这个插件的作用就是读取指定表格里的数据。 - 代码节点:从飞书插件读取到的数据是一个比较复杂的结构,我们需要用一段简单的代码把它处理成纯净的链接数组,方便后续循环。再次点击【+添加节点】,选择【代码】。
- 循环节点:因为我们要处理多个链接,所以必须有一个循环结构。点击【+添加节点】,选择【循环】。
- 插件节点(链接读取):这个节点需要放在循环内部,这样它才能针对每一个链接执行抓取。先选中你刚刚添加的“循环”节点,然后再点击【+添加节点】选择【插件】。这次搜索“链接读取”,选择
LinkReaderPlugin插件。它的本事就是根据一个URL,去抓取那个网页的标题和正文。 - 代码节点:这个节点也放在循环内部。它的任务是把抓取到的标题和正文,打包成飞书多维表格能接受的格式。选中循环节点,然后添加【代码】节点。
- 插件节点(飞书多维表格):同样在循环内部,添加另一个插件节点。搜索“飞书多维表格”,选择
add_records插件。它的作用是把我们打包好的数据,一条条添加到多维表格里。
节点添加完毕后,我们需要用连线把它们按照逻辑顺序连接起来。这是关键一步,连错了流程就跑不通了。具体连法如下:
- 主流程线:将“开始”节点连到
read_cols(飞书电子表格)节点,再连到第一个“代码”节点,接着连到“循环”节点,最后从循环节点连到“结束”节点。 - 循环体内流程线:在循环节点内部,将
LinkReaderPlugin(链接读取)节点连到第二个“代码”节点(我们叫它代码_1),再连到add_records(飞书多维表格)节点,最后从这个节点连回循环节点本身,形成一个闭环。
3.2 配置飞书表格:准备好你的“原料清单”
工作流的骨架搭好了,现在我们需要准备原料——也就是存放公众号文章链接的地方。打开飞书,新建一个电子表格,可以命名为“公众号文章地址”。在第一列,一行一个,把你想要处理的公众号文章链接全部粘贴进去。记住,一定要是完整的文章地址。
这里有个非常重要的细节:表格建好后,点击右上角的“分享”按钮。在分享设置里,将权限设置为“互联网获得链接的人”,并且编辑权限要设置为“可编辑”。这是因为扣子平台上的插件,需要以“互联网用户”的身份来读取这个表格的内容。如果权限没开,工作流运行时会报错,提示没有访问权限。分享后,复制这个表格的浏览器地址栏里的URL,稍后我们会用到。
4. 第二步:精细配置,让工作流“活”起来
节点连好了,原料也备齐了,现在我们要给每个节点注入“灵魂”——也就是配置具体的参数。这一步需要一点耐心,但跟着我做,绝对没问题。
4.1 配置数据读取与处理节点
首先点击画布上的 read_cols 节点,右侧会弹出配置面板。我们需要配置两个参数:
num_cols:这个意思是读取几列数据。我们的链接都放在第一列,所以这里填1。spreadsheet_token:这就是刚才让你复制的飞书表格的URL,把它粘贴到这里。这样,插件就知道该去读哪个表格了。
接下来配置第一个“代码”节点。这个节点的任务,是把 read_cols 读回来的复杂数据,提炼成单纯的链接数组。在它的配置面板“输入”选项中,新建一个变量,名字就叫 linkdata。在给这个变量赋值时,点击输入框,会弹出一个变量选择器。你需要层层展开:选择 read_cols 节点 -> 选择 data -> 选择 valueRange -> 选择 valuesJsonString。这一步的目的是把原始数据传递到我们的代码里进行处理。
然后,在“输出”选项中,新建一个变量,命名为 link,变量类型务必选择 Array -> String(字符串数组)。配置好后,点击“代码”选项旁边的“在IDE中编辑”按钮。在弹出的代码编辑器里,语言选择“JavaScript”,然后把下面这段代码粘贴进去:
async function main({ params }: Args): Promise<Output> {
// 解析输入的JSON字符串以获得实际的数组结构
const inputArray = JSON.parse(params.linkdata);
// 从每个对象中提取"text"字段(即我们的链接)
const textArray = inputArray.flatMap(outerArray =>
outerArray.flatMap(innerArray =>
innerArray.map(obj => obj.text)
)
);
// 返回提取的文本值数组
const ret = textArray;
return ret;
}
这段代码干了啥?它就像一个小筛子,把飞书插件返回的那一大坨嵌套的JSON数据过滤一遍,只把每个单元格里真正的“链接文字”提取出来,整理成一个干净的数组。比如你的表格里有5个链接,这里就会生成一个包含5个字符串的数组 [‘链接1’, ‘链接2’, ...]。
4.2 配置循环与内容抓取节点
现在来配置核心的“循环”节点。选中它,在右侧面板:
- “循环类型”选择“使用数组循环”。
- “循环数组”下的
input变量,其值就选择我们上一步“代码”节点输出的link变量。这样,循环就会遍历我们提取出来的每一个链接。 - “输出”选项下的
output变量,其值选择add_records节点下的[data]* n参数。这个设置是为了把循环体内处理好的数据传递出去。
然后配置循环体内的 LinkReaderPlugin 节点。这个节点很简单,只需要把 url 参数的值,设置为“循环”节点下的 item (in input)。这个 item 就是当前循环正在处理的那个链接。这样,每次循环,它都会去抓取一个新链接的内容。
接着配置循环体内的“代码_1”节点。这个节点负责数据格式转换。在“输入”选项中,添加两个变量:
title:值选择LinkReaderPlugin节点下的data->title。这是抓取到的文章标题。content:值选择LinkReaderPlugin节点下的data->content。这是抓取到的文章正文。
在“输出”选项中,新建一个变量 records,类型选择 Array (Object)。在这个变量下,再新建一个子变量 fields,类型为 Object。最后,在 fields 下创建两个字符串类型的子变量:title 和 content。这个结构是为了匹配飞书多维表格添加记录的格式。
同样,点击“在IDE中编辑”,粘贴以下代码:
async function main({ params }: Args): Promise<Output> {
const title = params.title;
const content = params.content;
const fields = {
"title": title,
"content": content
};
const records = [
{ "fields": fields }
];
const ret = {
"records": records
};
return ret;
}
这段代码的作用,就是把传入的标题和正文,打包成 {“records”: [{“fields”: {“title”: “xxx”, “content”: “yyy”}}]} 这样的格式,这正是飞书多维表格 add_records 插件所需要的“食材”。
4.3 配置数据写入与最终测试
最后,配置飞书多维表格的写入节点。首先,你需要在飞书里新建一个多维表格,命名为“批量提取公众号文章内容并改写”。在里面新建两个字段:“title”(文本类型)和“content”(文本类型)。同样,别忘了分享这个表格,权限设置为“互联网获得链接的人”且“可编辑”,然后复制它的URL。
回到扣子,配置 add_records 节点:
app_token:粘贴你刚复制的多维表格的URL。records:选择“代码_1”节点输出的records变量。
至此,所有配置完成!你可以点击画布底部的【试运行】按钮,来测试整个流程。如果一切配置正确,你会看到节点一个个亮起,执行成功。此时,立刻去飞书打开你的多维表格,神奇的事情发生了——表格里已经自动填入了从你提供的链接里抓取到的所有文章的标题和正文!
5. 第三步:召唤AI,实现智能内容改写
数据抓取和入库是自动化,但真正的“智能”体现在下一步。现在,原始内容已经躺在多维表格里了,我们如何让DeepSeek自动把它们改写得更好?
这就是飞书多维表格“探索字段捷径”功能的用武之地。在刚才那个多维表格里,我们新增一个字段,命名为“内容改写”。点击这个字段的编辑按钮,在字段类型里,找到并选择“探索字段捷径”。
这时,右侧会弹出配置面板。在“选择模型”或“输入指令”的地方,你会发现可以直接选择“DeepSeek R1(联网)”模型。接下来,就是下达指令的关键时刻了。在指令输入框中,你需要做两件事:
-
引用原始内容:通过输入
{content}来引用我们之前抓取到的“content”字段。这样AI才知道要改写哪段文字。 -
给出明确的改写指令:这是决定产出质量的核心。你不能只说“改写一下”,必须给出具体、可操作的要求。我经过多次尝试,总结出一个效果不错的指令模板:
“将
{content}引用的内容进行润色改写,核心要求是:保持原文的语义和基本句式结构不变;输出的段落格式要和原文保持一致(比如原文分三段,输出也分三段);在保持原意的基础上,让语言更丰富、更生动、更通俗易懂,可以适当增加一些衔接词或解释;一定要删除原文中多余的无意义符号、乱码或者冗余的格式标记。”最后,记得把“获取更多信息”下面的“思考过程”和“参考链接”复选框取消勾选,我们只需要最终结果,不需要中间过程。点击确定。
魔法开始了!你会发现,“内容改写”这个字段下的每一行,都会开始自动加载、思考,然后生成改写后的文本。稍等片刻,一整列全新的、经过AI润色的内容就诞生了。你可以对比一下“content”和“内容改写”两列,AI不仅去除了原文中可能存在的广告、无关符号,还用更流畅、更吸引人的语言重新组织了内容,真正做到了“信、达、雅”的初步要求。
6. 实战技巧与避坑指南
这套工作流我已经稳定运行了几个月,处理了上千篇文章。在这个过程中,我踩过不少坑,也总结出一些让流程更稳、效果更好的技巧。
第一,关于链接抓取的稳定性。 LinkReaderPlugin 插件虽然方便,但它依赖于目标公众号页面的结构。有些公众号文章加载了复杂的反爬机制,或者页面结构特殊,可能会导致抓取失败或抓取到乱码。我的经验是,如果遇到某个链接始终抓取不到内容,可以手动打开那个链接看看,是不是页面需要复杂的交互才能显示全文。对于这种“顽固分子”,可能需要考虑更专业的爬虫工具作为备用方案,但绝大多数常规公众号文章,这个插件都能搞定。
第二,关于AI改写指令的调优。 我上面给的指令是一个很好的起点,但你可以根据你的具体需求微调。比如:
- 如果你希望风格更活泼,可以加上“采用轻松活泼的网络用语风格”。
- 如果你需要更专业的报告,可以加上“以严谨、客观的行业分析报告风格进行改写”。
- 如果你只想提取摘要,指令可以改成“请提取
{content}的核心观点,总结成一段不超过200字的摘要”。 - 一个关键技巧:在指令里强调“严格保持原文的事实和数据,不得编造或篡改”,这对于新闻、资讯类内容非常重要,能有效防止AI“胡编乱造”。
第三,关于流程的扩展性。 这个工作流是一个强大的基础框架,你完全可以举一反三。比如,你可以在抓取内容后,增加一个“代码”节点,调用DeepSeek的API(或其他大模型API)先对内容进行摘要总结、情感分析或关键词提取,把这些中间结果也写入多维表格的新字段中。然后,再基于摘要或关键词,去生成更精准的改写指令。这样,你就构建了一个更复杂、更智能的内容分析流水线。
第四,关于错误处理与监控。 扣子工作流本身提供了试运行和日志查看功能。对于正式使用的流程,我建议定期检查运行日志。你可以在关键的“代码”节点里,用 console.log() 输出一些中间变量,方便调试。例如,在第一个代码节点里打印一下处理后的链接数组,确保链接被正确解析了。
最后,也是最重要的一点,尊重版权和隐私。这个工具是提升你个人工作效率的利器,请务必用于处理你有权使用的、或公开的资讯内容,切勿用于爬取受版权严格保护的付费内容或他人隐私信息。技术向善,才能走得更远。
更多推荐



所有评论(0)