每天5分钟,自动追踪YouTube博主更新——工作流实战教程

作为内容创作者或深度用户,你是否也遇到过这样的困扰?虽然订阅了大量优质YouTube博主,却总是难以第一时间掌握他们的更新动态——每次打开平台,要么淹没在算法推荐的信息洪流中,要么不得不逐个点开主页查看。更无奈的是,新发布的内容很可能并非你真正关心的主题。

以我自己为例:跟踪同领域竞品账号更新时,这种低效的信息获取方式严重消耗精力。于是我开始思考:能否构建一个智能工作流?让它每天自动扫描目标博主的更新情况,将视频关键信息(包括AI生成的内容摘要)打包推送到我面前。这样既节省时间,又能精准把握行业动态——而这,正是自动化工作流最擅长的场景。

先说一说实现的思路是怎样

我单独在一个多维表格中记录了我关注的youtube博主的名字、链接和channelID

(以两个为例)

接下来我们拆解下具体实现步骤

一、查询飞书多维表格记录

我们把youtube博主的信息记录在了一张多维表格里。

那么,我们需要查询多维表格里的youtube博主的ID信息,那么,这里就需要用到查询飞书多维表格的接口

这一步具体如何配置呢?我来详细讲解一下

1、获取表格token

接着我们就要去到n8n里,对接飞书的多维表格了。

首先我们要通过应用获取access_token

这里是一个http接口,我们在n8n添加一个http request节点

在节点里配置以下内容:

字段配置项
methodpost
urlhttps://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal
AuthenticationNone
Send Headersname:Content-TypeValue:application/json; charset=utf-8
Send BodyBody Content Type:json①name:app_idvalue:复制创建的应用的app_id②name:app_secretvalue:复制创建的应用的app_secret

运行这个节点,会输出一个tenant_access_token值,这个值相当于是接下来我们获取多维表格记录的一把钥匙

2、查询表格记录

飞书提供了查询多维表格记录的接口(https://open.feishu.cn/document/docs/bitable-v1/app-table-record/search?appId=cli_a6e243e0f9d9100c)

我们按接口来配置

字段配置项备注
methodpost
urlhttps://open.feishu.cn/open-apis/bitable/v1/apps/:app_token/tables/:table_id/records/search①:app_token:替换成实际的app_token,如下图,多维表格链接上高亮部分的值②:table_id:替换成实际的table_id,如下图,多维表格链接上高亮部分的值
AuthenticationNone
Send Headers①name:AuthorizationValue:application/json; charset=utf-8②name:Bearer {{ $json.tenant_access_token }}Value:application/json; charset=utf-8{{ $json.tenant_access_token }}这个值我们从上个节点的output里拖拽过来即可
Send BodyBody Content Type:jsonname:view_idvalue:view_id的值view_id就是多维表格链接上,如上图高亮部分的值

好了,到这里,我们的配置就完成了

运行这个节点

在output里,我们就看到是已经成功的获取到多维表格里的数据了。

二、将获取到的数据结构化

因为获取到的多维表格记录,我们需要去循环ID,依次去查询ID下是否有更新视频

所以我们就需要把id值都提取出来,并且组成一个数组

我们用code节点来实现

const items = $('查询表格记录').all()[0].json.data.items;

// 创建一个新数组,只包含 ID 信息
const idList = items.map(item => {
  return {
    id: item.fields.ID[0].text
  };
});

// 返回结果
return idList;

那么最后output出来的数据,就是这样的格式

[
  {
    "id": "UCATnB3v_NkTTd9iD_4W2A-g"
  },
  {
    "id": "UCvijahEyGtvMpmMHBu4FS2w"
  }
]

三、循环

接下来我们添加一个循环节点,去循环数组里的id值

四、查询youtube频道

添加一个http节点,这个节点的目的是调用youtube的查询接口,去查询博主当天是否有更新

youtube也提供了接口文档(https://developers.google.com/youtube/v3/getting-started?hl=zh-cn)

我们在节点进行配置

字段配置项备注
methodget
urlhttps://www.googleapis.com/youtube/v3/search
AuthenticationPredefined Credential Type
Credential TypeYouTube OAuth2 API获取youtube的接口授权在google cloude console里创建项目,获取youtube的api凭证
YouTube OAuth2 API需要去google cloud开发者后台去申请接口并授权
Send Query Parameters①name:partValue:snippet②name:channelIdValue:{{ $json.id }}③name:maxResultsValue:1④name:typeValue:video⑤name:publishedAfterValue:{{ $(‘修改日期格式’).item.json.formattedDate }}T00:00:00Z⑥name:publishedBeforeValue:{{$(‘修改日期格式’).item.json.formattedDate }}T23:59:59Z⑦name:orderValue:datepublishedAfter和publishedBefore主要是为了设置一个事件范围,意思就是获取当天发布的视频。所以,我们还需要设置一个节点,获取当天的日期(“五、获取日期”)

运行节点,output就输出了我们查询的channelid下的博主当天的视频更新情况

五、获取日期

这个节点放在这里讲,会好理解一些

上面说了,我们需要获取当天发布的视频,所以要有一个时间范围

首先我们就要知道工作流运行时当前日期是什么

我们添加一个date&time的节点

选择get current date

运行后,我们看到是获取到了当前的日期

但其实这里的时间格式还是不大符合我们的需要(我们需要年月日这样的格式)

所以接下来我们需要格式化这个日期

同样的,我们再添加一个date&time节点

选择Format a Date的操作

Format选择YYYY-MM-DD

执行后再看输出的内容,当前日期就变成了年月日的格式了。

六、条件判断

接下来我们需要一个条件判断,也就是当天有更新视频的博主,我们就把更新的内容获取到,记录到多维表

如果没有更新,那就继续去循环下一个博主的id

根据什么值来进行条件判断呢?在output出来的值,我们看到有个”totalResults”的字段

这个就是记录更新数

所以我们在if节点就用这个来进行判断

如果totalResults不等于0,那就为true,就进行后续的获取视频信息并记录到多维表格的操作

七、获取视频信息

好了,那么我们知道某个channelid下有更新,接着就要获取到更新的这个视频的详细信息

我们添加一个youtube节点(n8n已经封装好了youtube的一些操作,选择即可。有朋友会问,为什么上面查询接口是用的http呢?因为n8n的youtube节点里没有提供查询接口,所以只能用http节点来去实现)

我们选择里面的“get a video”

n8n封装好的节点就比较简单好用了,同样的我们在节点先进行授权,Resource选择video,Operation选择get,然后Video ID这里,我们把上个节点获取到的videoid字段拖拽到框里

最后运行节点就可以了。

看右边的output里,已经成功输出了对应的视频信息。包括视频的标题、发布日期、视频描述…..

八、获取视频字幕

其实我一直想要比如我获取到了视频的链接,然后有一个节点,可以帮我把视频的文字内容提取出来,然后再用AI节点帮我进行总结再发送给我。这样其实我扫一眼推给我的总结信息,我就知道大概更新了什么内容,我是否需要进去视频看详细内容。

但,n8n没有这个节点,我也寻找过社区节点安装,效果都不好。

最近在网上发现了一个supadata的产品(supadata.ai),可以实现提取视频内容,并且有开放API,而且每个月还有免费的额度使用。如果你使用量不大的话,完全足够了

(supadata)

我们先注册登录supadata,并且申请一个api key

接着我们在n8n里,同样新增一个http节点

字段配置项
methodget
urlhttps://api.supadata.ai/v1/transcript
AuthenticationNone
Query Parametersname:urlValue:https://youtu.be/{{ $json.id }}
Send Headersname:x-api-keyValue:申请的supadata的api-key

九、新增多维表格记录

同查询,操作是一样的,不过这里我们是新增多维表格记录,用新增记录的接口来实现

其他配置就不细说了,就单独说一下body的配置吧

因为多维表格我们配置的是以下几个字段

所以我们在body的配置,就是要给表格对应的字段进行传值

{
  "fields": {
    "id": "{{ $('Get a video').item.json.id }}",
   
    "content": "{{  $json.content  }}",
    "publishedAt": "{{ $('Get a video').item.json.snippet.publishedAt }}",
    "channelId": "{{ $('Get a video').item.json.snippet.channelId }}",
    "title": "{{ $('Get a video').item.json.snippet.title }}"
  
  }
}

当工作流运行后,对应更新的视频内容就自动新增到多维表格中了(如下)

那么,我们可以利用多维表格自身的能力,实现一些需求

比如,通过AI字段,对content的内容进行精简和总结

再比如,当多维表格新增记录时,你希望可以通过飞书给你发送一条消息提醒

我们可以用多维表格的自动化来实现

这样,当多维表格新增一条记录时,就可以给你的飞书账号,发送一条消息提醒了。 消息卡片上展示更新的标题和内容简介。

通过这个工作流,你每天定期就可以获取到你感兴趣的youtube博主的更新内容,直接在飞书消息卡片中就能知道更新了什么,感兴趣的时候,再进去youtube看详细视频。

3人评论了“每天5分钟,自动追踪YouTube博主更新——工作流实战教程”

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部