百达冻品 發表於 2025-11-24 19:48:00

扣子Coze实战:从0到1搭建抖音+小红书对标账号监控智能体

<p>大家好,我是汤师爷,AI智能体架构师,致力于帮助100W人用智能体创富~</p>
<p>选题对内容创作至关重要,但面对海量信息,找到有价值的爆款选题并不容易。</p>
<p>对标账号监控是内容创作者制定策略的有效工具。</p>
<p>通过跟踪和分析行业内优秀创作者的内容,我们能获得市场洞察和创作灵感,避免从零摸索。</p>
<p>这个方法尤其适合新手创作者,帮助他们快速了解哪类内容最受欢迎。</p>
<h3 id="1-为什么要做对标账号监控">1. 为什么要做对标账号监控</h3>
<p><strong>1、帮助发现行业趋势</strong></p>
<p>通过观察头部创作者的内容变化,我们能及时把握行业热点和用户兴趣的转变。</p>
<p>例如,当多个知名美妆博主同时开始测评某款新产品时,这很可能意味着该产品正成为市场热点。</p>
<p>及时跟进这类话题,可以帮我们搭上流量红利的顺风车。</p>
<p><strong>2、提供内容创作参考框架</strong></p>
<p>通过分析成功账号的视频标题、封面设计、内容结构和互动策略,我们可以提取有效的内容模式。</p>
<p>这些模式不是用来简单复制,而是帮助我们理解哪些元素能引起用户共鸣,从而优化自己的创作。</p>
<p><strong>3、提升创作效率</strong></p>
<p>在内容创作的海洋中,没有明确方向很容易迷失和浪费资源。借鉴成功账号的经验,可以帮我们避开许多不必要的弯路,将有限的精力集中在已被验证有效的内容策略上。</p>
<h3 id="2-智能体的搭建流程">2. 智能体的搭建流程</h3>
<p>智能体的搭建流程主要分为两个步骤:梳理工作流和设置智能体。</p>
<p><strong>1、梳理工作流</strong></p>
<p>将对标账号监控的场景流程转化为可自动化运行的工作流节点。下面是具体步骤:</p>
<ol>
<li>根据短视频链接,获取用户的基础信息</li>
<li>根据用户ID,批量获取视频列表</li>
<li>筛选出对标账号每天发布的视频</li>
<li>将数据添加到飞书表格中</li>
</ol>
<p><strong>2、设置智能体</strong></p>
<ol>
<li>设置人设与逻辑:配置对标账号监控智能体的特征、回复风格和决策逻辑</li>
<li>绑定工作流:将工作流与智能体关联,赋予其执行具体任务的能力</li>
<li>测试并发布:进行全面的功能测试,确认正常后将智能体正式发布到生产环境</li>
</ol>
<h3 id="3-抖音对标账号监控工作流">3. 抖音对标账号监控工作流</h3>
<p>登录Coze官网,在“资源库-工作流”里新建一个空白工作流,取名“fetch_douyin_user_videos”。</p>
<p>工作流整体预览。</p>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749943-142039638.jpg"></p>
<p><strong>1、开始节点</strong></p>
<p>这里用于定义工作流启动时所需的输入参数。</p>
<ul>
<li>输入:
<ul>
<li>video_url:抖音视频分享链接</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749652-45702354.jpg"></p>
<p><strong>2、插件节点:获取对标账号视频信息</strong></p>
<p>我们将使用“视频搜索”插件的douyin_data工具。通过这个功能,我们可以根据短视频链接,获取用户的ID信息。</p>
<ul>
<li>输入:
<ul>
<li>douyin_url:开始节点的video_url</li>
<li>api_token:API秘钥</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749671-1889985492.jpg"></p>
<p><strong>3、插件节点:根据用户ID,批量获取视频列表</strong></p>
<p>我们继续使用“视频搜索”插件,使用其中的工具get_user_video_list。根据用户ID,批量获取视频列表。</p>
<ul>
<li>输入:
<ul>
<li>api_token:API秘钥</li>
<li>sec_uid:在"获取对标账号视频信息"节点的输出变量中,选择用户ID(sec_uid)</li>
<li>count:设置需要获取的短视频数量,建议设为5个</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749891-110140280.jpg"></p>
<p><strong>4、批处理节点:批量获取视频详细信息</strong></p>
<p>这一步将为我们从对标账号的视频列表中提取每个视频的关键数据。通过批处理功能,我们可以同时处理多个视频链接,大大提高数据采集效率。</p>
<ul>
<li>输入:
<ul>
<li>aweme_list:从“根据用户ID,批量获取视频列表”节点的输出中,选择 aweme_list</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749762-1042461891.jpg"></p>
<p><strong>5、批处理体内插件节点:获取单个视频详情</strong></p>
<p>我们将使用“视频搜索”插件的douyin_data工具。通过这个功能,我们可以根据抖音视频链接,获取视频详情信息。</p>
<ul>
<li>输入:
<ul>
<li>api_token:API秘钥</li>
<li>douyin_url:从“批量获取视频详细信息”节点的输出中,选择share_url</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749820-1980250560.jpg"></p>
<p><strong>6、批处理体内代码节点:将视频详情整合进视频列表中</strong></p>
<p>这一步将从抖音API获取的详细视频信息与我们之前收集的视频列表数据合并。通过这个过程,我们能确保掌握每个视频的完整信息,包括互动数据(点赞、评论、收藏数)、创作者信息和内容详情,为后续分析提供全面的数据基础。</p>
<ul>
<li>输入:
<ul>
<li>aweme_detail:从 “获取单个视频详细信息”节点的输出中,选择aweme_detail</li>
<li>aweme:从“批量获取视频详细信息”节点的输出中,选择item</li>
</ul>
</li>
<li>输出:
<ul>
<li>aweme_list:变量类型设置为 Array 对象数组,表示处理后的单条视频</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749874-1137641768.jpg"></p>
<p>下面是处理数据的Python代码,它会将视频信息转换成我们需要的格式。</p>
<pre><code class="language-python">async def main(args: Args) -&gt; Output:
    params = args.params
    aweme_detail = params.get("aweme_detail", {})
    aweme = params.get("aweme", {})
    aweme["aweme_detail"] = aweme_detail

    ret: Output = {
      "aweme_list":
    }
    return ret
</code></pre>
<p><strong>7、批处理体内代码节点:将信息整理为飞书表格可以使用的数据</strong></p>
<p>在这个环节中,我们会提取视频的核心信息(如标题、点赞数、评论数等),并将它们转换成飞书表格能够直接识别和处理的格式。</p>
<ul>
<li>输入:
<ul>
<li>aweme_list:从"将视频详情整合进视频列表中"节点的输出中,选择aweme_list</li>
</ul>
</li>
<li>输出:
<ul>
<li>records:处理后的表格数据,选择Array类型</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749902-541977948.jpg"></p>
<p>下面是Python代码,用于处理数据转换。这段代码至关重要,它将抖音API返回的原始数据转换为结构化的表格格式。</p>
<pre><code class="language-python">async def main(args: Args) -&gt; Output:
    params = args.params
    aweme_list = params.get("aweme_list", [])

    result = []

    # 遍历 aweme_list,依次处理
    for aweme in aweme_list:

      # 获取 aweme_detail 并判空
      aweme_detail = aweme.get("aweme_detail") or {}
      title = aweme_detail.get("desc") or ""
      link = aweme_detail.get("share_url") or ""

      # 安全获取 statistics
      statistics = aweme_detail.get("statistics") or {}

      # 提取各字段信息,并在取值时加默认值
      video_id = statistics.get("aweme_id") or ""
      digg_count = statistics.get("digg_count") or 0
      comment_count = statistics.get("comment_count") or 0
      collect_count = statistics.get("collect_count") or 0
      share_count = statistics.get("share_count") or 0

      # 获取作者信息
      author_info = aweme_detail.get("author") or {}
      author_name = author_info.get("nickname") or ""
      signature = author_info.get("signature") or ""
      sec_uid = author_info.get("sec_uid") or ""
      raw_create_time = aweme_detail.get("create_time", 0)
      # 如果不是 int,就尝试转换,失败则为 0
      try:
            create_time = int(raw_create_time)
      except (TypeError, ValueError):
            create_time = 0

      # 创建时间以毫秒计,避免 None 或非法值导致报错
      create_time_ms = create_time * 1000

      raw_duration = aweme_detail.get("duration", 0)
      # 如果不是数字,尝试转换为 float,失败则为 0
      try:
            duration = float(raw_duration)
      except (TypeError, ValueError):
            duration = 0.0
      duration_sec = duration / 1000

      # 组装返回数据
      item_dict = {
            "fields": {
                "视频ID": video_id,
                "标题": title.strip(),
                "链接": {
                  "text": "查看视频",
                  "link": link.strip(),
                },
                "点赞数": digg_count,
                "评论数": comment_count,
                "收藏数": collect_count,
                "分享数": share_count,
                "作者": author_name,
                "用户简介": signature,
                "用户ID": sec_uid,
                "发布日期": create_time_ms,# 毫秒级时间戳
                "时长": duration_sec         # 秒
            }
      }
      result.append(item_dict)

    return result
</code></pre>
<p><strong>8、批处理体内插件节点:将数据添加到多维表格</strong></p>
<p>首先,我们需要创建一个多维表格,设置好表头字段。</p>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749717-310583150.jpg"></p>
<p>选择“飞书表格”插件节点的add_records工具,将数据添加到多维表格。</p>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749755-832410013.jpg"></p>
<ul>
<li>输入:
<ul>
<li>app_token:提前创建一个多维表格,将多维表格的链接复制进去。</li>
<li>records:从"将信息整理为飞书表格可以使用的数据"的输出变量中,选择records。</li>
<li>table_id:多维表格数据表的唯一标识符</li>
</ul>
</li>
</ul>
<p><strong>9、结束节点</strong></p>
<p>选择"返回文本",将回答内容设置为:已获取对标账号的最新视频列表。</p>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749832-958832485.jpg"></p>
<h3 id="4小红书对标账号监控工作流">4.小红书对标账号监控工作流</h3>
<p>登录Coze官网,在"资源库-工作流"中新建一个空白工作流,命名为"xhs_zhuye"。</p>
<p>工作流整体预览。</p>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749613-1582305027.jpg"></p>
<p><strong>1、开始节点</strong></p>
<p>此节点用于定义工作流启动时所需的输入参数。</p>
<ul>
<li>输入:
<ul>
<li>foldUrl:飞书表格链接</li>
<li>cookie:小红书平台的cookie信息,这是访问小红书数据的身份凭证,获取方法参考6节</li>
<li>userProfileUrl:要监控的小红书博主主页完整URL地址</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749696-914284561.jpg"></p>
<p><strong>2、插件节点:获取博主所有小红书笔记</strong></p>
<p>我们将使用"小红书"插件的xhs_auther_notes工具。这个工具能帮我们一次性获取博主所有发布的笔记内容。</p>
<ul>
<li>输入:
<ul>
<li>cookieStr:开始节点的 cookie</li>
<li>userProfileUrl:开始节点的 userProfileUrl</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749855-2099416471.jpg"></p>
<p><strong>3、循环节点:循环获取笔记详情</strong></p>
<p>循环获取笔记详情是工作流中的一个关键步骤,它会遍历博主所有的笔记,逐一获取详细信息,收集每篇笔记的数据,包括标题、内容、互动数据等。</p>
<ul>
<li>输入
<ul>
<li>input:从 “获取博主所有小红书笔记”节点 的输出中,选择 notes</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749775-1919713790.jpg"></p>
<p><strong>4、循环体内插件节点:获取笔记详情</strong></p>
<p>我们将使用"小红书"插件的xhs_note_detail工具。这个工具能够帮助我们获取每篇笔记的详细信息,包括笔记内容、互动数据、图片和视频资源链接等。</p>
<ul>
<li>输入
<ul>
<li>cookieStr:开始节点的 cookie</li>
<li>noteUrl:从 “循环笔记详情” 节点的输出中,选择 noteUrl</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749814-1993973919.jpg"></p>
<p><strong>5、循环体内插件节点:提取视频文案</strong></p>
<p>我们将使用"字幕获取"插件的generate_video_captions_sync工具。这个工具可以自动提取视频中的语音内容并转换为文字,非常适合批量处理视频素材和内容分析。</p>
<ul>
<li>输入:
<ul>
<li>url:从"获取笔记详情"节点的输出中,选择 video_h264_url,表示H264标准编码格式视频链接</li>
<li>lang:视频语言,如汉语、英语等,不填时默认为汉语</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749761-1402309695.jpg"></p>
<p><strong>6、循环体内代码节点:将笔记数据整理成飞书表格格式</strong></p>
<p>这一步是将我们获取到的原始数据转换成标准化、结构化的格式,以便后续导入飞书表格。</p>
<ul>
<li>输入
<ul>
<li>input:从“获取笔记详情”节点的输出中,选择note</li>
<li>data:从“提取视频文案”节点的 输出中,选择 content</li>
</ul>
</li>
<li>输出
<ul>
<li>records:变量类型设置为 Array 对象数组,表示处理后的单条视频</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749737-1287537636.jpg"></p>
<p>下面是处理数据的Python代码:</p>
<pre><code class="language-python">async def main(args: Args) -&gt; Output:
    input_data = args.params.get('input')or {}
    data = args.params.get('data') or {}

    records = []# 初始化 records 列表

    # 提取 note 相关字段
    title = input_data.get('note_display_title', '')# 标题
    desc = input_data.get('note_desc', '')# 描述
    url = input_data.get('note_url', '')# 链接
    nickname = input_data.get('auther_nick_name', '')# 作者昵称
    likedCount = input_data.get('note_liked_count', '0')# 点赞数
    videoUrl = input_data.get('video_h264_url', '')# 视频地址
    collectedCount = input_data.get('collected_count', '0')# 收藏数
    imageList = input_data.get('note_image_list', [])# 图片列表

    # 构建记录对象
    record = {
      "fields": {
            "笔记链接": url,
            "标题": title,
            "内容": desc,
            "作者": nickname,
            "点赞数": likedCount,
            "链接": {
                "link": url,
                "text": title
            },
            "收藏数": collectedCount,
            "图片地址": '\n'.join(imageList),# 将图片列表拼接成字符串
            "视频地址": videoUrl,
            "视频文案": data.get("content", "")
      }
    }
    records.append(record)# 将记录对象添加到 records 列表中

    # 构建输出对象
    ret: Output = {
      "records": records
    }
    return ret
</code></pre>
<p><strong>7、循环体内插件节点:写入飞书表格</strong></p>
<p>首先,我们需要创建一个多维表格,设置好表头字段。</p>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749769-831185606.jpg"></p>
<p>表头字段包括视频的所有关键信息:笔记链接、标题、内容、作者、点赞数、链接、收藏数、图片地址、视频地址、视频文案。<br>
最后,我们将处理好的数据添加到飞书多维表格中。选择“飞书表格”插件节点的add_records工具,将数据添加到多维表格。</p>
<ul>
<li>输入:
<ul>
<li>app_token:开始节点的 foldUrl,也就是飞书多维表格的链接</li>
<li>records:从“将笔记整理成飞书表格格式”的输出变量中,选择records</li>
<li>table_id:多维表格数据表的唯一标识符</li>
</ul>
</li>
</ul>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749792-1724696296.jpg"></p>
<p><strong>8、结束节点</strong></p>
<p>选择“返回变量”,输出:output 开始节点的foldUrl,也就是飞书多维表格的链接</p>
<p><img src="https://img2024.cnblogs.com/blog/2625446/202511/2625446-20251124194749871-2015124310.jpg"></p>
<h2 id="5-小结">5. 小结</h2>
<p>对标账号监控智能体专注于竞品分析,自动获取优质账号的内容数据。</p>
<p>我们介绍了抖音和小红书平台的监控工作流搭建方法,包括获取视频列表、提取详情、整理数据结构和存储等步骤。</p>
<p>通过这一智能体,创作者可持续学习行业标杆,获取创作灵感和参考。</p>
<blockquote>
<p>本文已收录于,我的技术博客:tangshiye.cn里面有,AI 学习资料,Coze 工作流,n8n 工作流,算法 Leetcode 详解,BAT 面试真题,架构设计,等干货分享。</p>
</blockquote>


</div>
<div id="MySignature" role="contentinfo">
    <p>本文来自博客园,作者:AI架构师汤师爷,转载请注明原文链接:https://www.cnblogs.com/tangshiye/p/19265545</p><br><br>
来源:https://www.cnblogs.com/tangshiye/p/19265545
頁: [1]
查看完整版本: 扣子Coze实战:从0到1搭建抖音+小红书对标账号监控智能体