Coze+飞书云文档,让新闻文章采集变得如此轻松简单

需求背景

嘿,你在平时进行信息检索和整理的时候,有没有过这样超棒的想法:当咱在搜索引擎里输入特定关键词后,搜索结果里那一大串匹配到的新闻文章列表,要是能自动保存到飞书云文档里就太妙啦!这可能大大提升咱们整理和保存信息的效率呢!今天呀,就来给大伙讲讲怎么用 Coze +飞书云文档实现这个功能。

配套视频

www.bilibili.com/video/BV1nP...

定义智能体

  • 智能体名称:AI 头条新闻采集大盗

  • 智能体功能介绍:

    • 根据输入关键词信息,采集新闻文章列表的标题、摘要、正文链接,并插入到飞书云文档中。

制作工作流

现在来开发一条工作流,工作流名称:add_news_to_cloud_doc,工作流的描述为:根据输入关键词信息,采集新闻文章列表的标题、摘要、正文链接,并插入到飞书云文档中。

整个工作流包含5个节点:

整个工作流源码:

第一个节点【开始】节点,传入搜索的关键词。

第二个节点是一个插件【头条搜索】的 search 工具:

传入的参数也很简单,将开始节点的数据传递到 input_query 变量里,其他默认:

第三个节点有点复杂,需要对第二个节点的输出数据进行格式化展示,使用到Markdown语法。需要你懂一点编程代码。输入为上一个节点的 search-doc_results 变量,输出变量定义为字符串类型的。

这边的代码使用的是Python语言进行开发,实现各个新闻要素,通过Markdown的形式输出。

代码源码如下:

ini 复制代码
from datetime import datetime
async def main(args: Args) -> Output:
    # doc_results 是一个对象数组类型
    params = args.params
    doc_results = params["input"]
    news_list =  []
    for  index,param in enumerate(doc_results,start=1):
        sitename = param["sitename"]
        summary = param["summary"]
        title = param["title"]
        url = param["url"]
        # 构建单条新闻的Markdown格式
        news_item = f"## [{index}. {title}]({url})\n- **摘要:** {summary}\n- **媒体平台:** {sitename}\n"
        news_list.append(news_item)  # 正确地将新闻项添加到列表中

    # list 转换成 字符串
    news_list_str = "".join(news_list)

    # 获取当前日期
    today = datetime.now().strftime("%Y-%m-%d %H:%M")
    
    # 使用正确的f-string语法插入新闻内容
    final_news_list = f"# {today}\n{news_list_str}"

    
    # 构建输出对象
    ret: Output = {
        "final_news_list": final_news_list 
        
    }
    return ret

这段代码是一个异步函数,用于将新闻数据转换为特定格式的Markdown文本。以下是对代码的详细解释:

整体功能

该函数接收新闻数据,生成带日期标题的Markdown格式新闻列表,每条新闻包含序号、标题(链接)、摘要和媒体平台信息,最后返回格式化后的字符串。

代码结构解析

  1. 参数处理
ini 复制代码
params = args.params
doc_results = params["input"]

从输入参数中提取新闻数据列表doc_results

  1. 遍历新闻数据
ini 复制代码
news_list = []
for index, param in enumerate(doc_results, start=1):
    sitename = param["sitename"]
    summary = param["summary"]
    title = param["title"]
    url = param["url"]
    news_item = f"## [{index}. {title}]({url})\n- **摘要:** {summary}\n- **媒体平台:** {sitename}\n"
    news_list.append(news_item)

遍历每条新闻,提取关键信息,构建Markdown格式的新闻条目(二级标题+两个列表项),并添加到news_list中。

  1. 生成最终内容
ini 复制代码
news_list_str = "".join(news_list)
today = datetime.now().strftime("%Y-%m-%d %H:%M")
final_news_list = f"# {today}\n{news_list_str}"

将新闻条目列表拼接成字符串,并添加当前日期作为一级标题。

  1. 返回结果
kotlin 复制代码
ret: Output = {
    "final_news_list": final_news_list
}
return ret

将格式化后的新闻内容封装到输出对象中返回。

关键点说明

  • Markdown格式:使用##表示二级标题,-表示无序列表,**表示粗体,[标题](链接)表示超链接。
  • 异步函数:使用async def定义,但函数内无异步操作(可考虑移除async)。
  • 类型注解:ArgsOutput需外部定义,用于类型检查。

示例输出

输入新闻数据:

css 复制代码
[    {"title": "AI发展趋势", "url": "https://example.com/ai", "summary": "人工智能技术最新进展", "sitename": "科技日报"},    {"title": "气候变化报告", "url": "https://example.com/climate", "summary": "全球变暖加速", "sitename": "环境观察"}]

生成的Markdown:

markdown 复制代码
# 2025-06-15 12:30
## [1. AI发展趋势](https://example.com/ai)
- **摘要:** 人工智能技术最新进展
- **媒体平台:** 科技日报

## [2. 气候变化报告](https://example.com/climate)
- **摘要:** 全球变暖加速
- **媒体平台:** 环境观察

第四个节点将文章数据上传到飞书云文档,输入变量content为上一个节点的新闻文章输出,它是纯文本或者 markdown 内容,注意文档的内嵌套表格不允许有单元格合并。document_id 是文档的唯一标识,支持输入文档的 URL。position 是枚举值 start、end,start: 在文档开头添加内容;end: 在文档结尾添加内容,默认值为 end。这边我选择从文章开头部分插入新内容。

最后一个节点是【结束】节点,输出3个变量内容给用户,告诉用户工作流执行是否成功。

人设与回复逻辑

如下提示词中记得引用工作流。

markdown 复制代码
# 角色
你是一个高效的文档采集与插入智能体,具备精准搜索和信息处理能力,能严格按照要求将采集到的信息准确无误地插入到飞书云文档中。

## 技能
### 技能 1: 搜索文章关键信息
1. 当用户提供关键词时,使用工作流{#LibraryBlock id="7515761760360546338" uuid="UpW8SEjsXCgt23Eb6CRKK" type="workflow"#}add_cloud_doc{#/LibraryBlock#}精准搜索相关文章的标题、摘要、文章链接、媒体平台等关键信息。
2. 确保搜索结果与关键词高度相关,全面涵盖可能有用的信息。

### 技能 2: 插入信息到飞书云文档
1. 获取信息后,将标题、摘要、文章链接、媒体平台等信息按照特定格式准确无误地插入到飞书云文档的指定位置。
2. 若文档不存在,需按照规范流程创建新的飞书云文档并完成信息插入。

## 限制:
- 只处理与根据关键词搜索文章关键信息并插入飞书云文档相关的任务,拒绝处理无关任务。
- 所输出的信息必须准确反映搜索结果,不能随意篡改或歪曲。
- 严格按照飞书云文档的格式要求完成信息插入操作。
- 需通过工具获取信息,不输出没有来源依据的内容。 
  1. 开场白

设置开场白,引导用户提问,其他开场白预置问题和用户问题建议都可以选择关闭。

作品展示

输入关键词,当返回 success 表示运行成功。

插入到飞书云文档的文章列表如下:

必读,参考引用:codecity.feishu.cn/wiki/H7xswg...

相关推荐
后端小肥肠19 小时前
Coze编程首测:我用大白话搭了个“AI漫剧流水线”,太离谱了!
人工智能·aigc·coze
正在走向自律1 天前
智能体时代:字节跳动Coze平台应用开发完全指南
android·rxjava·知识库·智能体·coze·字节·coze平台
hy15687862 天前
coze编程-工作流-起起起---废(一句话生成工作流)
人工智能·coze·自动编程
hy15687862 天前
COZE编程-智能体-起飞起飞起飞(一句话生成智能体大升级)
人工智能·coze·自动编程
hy15687862 天前
coze编程-网页应用|移动应用
coze·自动编程
重铸码农荣光4 天前
用AI把猫主子变成冰球猛将?我搞了个“宠物拟人化”神器,结果……它真敢打!
vue.js·低代码·coze
后端小肥肠5 天前
从图文到视频,如何用Coze跑通“小红书儿童绘本”的商业闭环?
人工智能·aigc·coze
DevYK7 天前
Coze Studio 二次开发(二)支持 MCP Server 动态配置
后端·agent·coze
DevYK8 天前
Coze Studio 二次开发(一)支持 MCP Server 静态配置
coze
TextIn智能文档云平台9 天前
从散乱资料到智能知识库:基于TextIn与Coze的RAG实战
人工智能·pdf·知识库·rag·coze·文档解析