手把手教你搭建「扣子」工作流:从 0 到 1 把创意自动化,让 AI 每天帮你省 2 小时适合人群:产品/运营/自媒体/开发者,0 代码基础也能看
通过 Coze 工作流,我们可以轻松实现TikHub → 飞书多维表格的数据自动化同步,大幅提升内容运营效率。无论是做小红书对标分析、选题策划,还是内容库建设,这套流程都能为你节省大量时间。
一、准备工作(之前博客有提到)
✅ 步骤 1:环境准备
-
Coze:https://www.coze.com
- TikHub:https://doc.tikhub.io(拿到 即可,免费 200 次/天)
-
飞书:新建「热点选题库」多维表,记录字段:
标题热度摘要角度状态入库时间
-
打开 https://user.tikhub.io → 用邮箱注册账号。
-
登录后务必先点右上角「签到」,系统会赠送当日免费额度(不签到后续可能无法调用接口)。
✅ 步骤 2:创建 API Key
-
打开 https://user.tikhub.io → 用邮箱注册账号。
-
登录后务必先点右上角「签到」,系统会赠送当日免费额度(不签到后续可能无法调用接口)。左侧菜单进入 「API 管理 / 价格」 → 点击 「创建 API 密钥」。
-
在弹出框里:
-
给密钥起个名字(随意)
-
过期日期选「永久」或自定义
-
权限务必「全选」所有 Scopes,否则后续接口会 403
-
-
点「保存」→ 立刻复制生成的密钥(页面仅显示一次)。

✅ 步骤 3:使用密钥,创建飞书多维表格
1把密钥放到请求头即可:
Authorization: Bearer 你的密钥
2多维表格的创建
| 字段名 | 类型 |
|
标题 |
文本 |
| 文案 | 文本 |
| 作者 | 文本 |
| 下载地址 | 文本 |
| 分享链接 | 文本 |
| 发布时间 | 文本 |
| 点赞 | 数字 |
| 分享 | 数字 |
| 评论 | 数字 |
| 收藏 | 数字 |
| 封面图 | 文本 |
| 时长 | 数字 |
二、整体流程概览
开始节点(输入关键词/博主链接)
↓
TikHub 插件获取笔记数据
↓
循环处理每条笔记
↓
写入飞书多维表格
↓
结束节点(返回成功信息)
1.创建工作流

2.tikhub文档调试

点击Apofox UI,点击📚 Apifox UI: https://docs.tikhub.io

在左侧找到Douyin-Web-API,选择获取用户主页作品数据

进行调试(之前博客有提)
https://blog.csdn.net/2301_81893110?spm=1011.2480.3001.10640
3.添加代码节点
IDE中编辑如下字段,输入输出见图片
// 在这里,您可以通过 'params' 获取节点中的输入变量,并通过 'ret' 输出结果
// 'params' 已经被正确地注入到环境中
// 下面是一个示例,获取节点输入中参数名为'input'的值:
// const input = params.input;
// 下面是一个示例,输出一个包含多种数据类型的 'ret' 对象:
// const ret = { "name": '小明', "hobbies": ["看书", "旅游"] };
async function main({ params }: Args): Promise<Output> {
// 构建输出对象
const ret = {
"seclD": params.homeurl ,// 返回网址中的第二段路径
"BearerToken": "Bearer "+params.token, // 返回一个加前缀Bearer的token
};
return ret;
}
function getSecondPathSegment(url) {
try {
const urlObj = new URL(url);
const segments = urlObj.pathname.split('/').filter(Boolean); // 过滤空字符串
return segments.length >= 2 ? segments[1] : null;
} catch (e) {
return null; // 处理非法 URL
}
}
// 测试
const url = "https://www.douyin.com/user/MS4wLjABAAAAfs8uL2emoFXPJHWhiQDan6hj1Fhg_E4SPNn6O4R453A?from_tab_name=main";
console.log(getSecondPathSegment(url)); // 输出: user

4.添加插件(之前建好的,没建可以见之前的博客)
插件输入输出参数如下:


插件输入如下:

5.添加IF选择器

6.增加批处理

批处理体设置如下:




IDE代码如下:
// 在这里,您可以通过 'params' 获取节点中的输入变量,并通过 'ret' 输出结果
// 'params' 已经被正确地注入到环境中
// 下面是一个示例,获取节点输入中参数名为'input'的值:
// const input = params.input;
// 下面是一个示例,输出一个包含多种数据类型的 'ret' 对象:
// const ret = { "name": '小明', "hobbies": ["看书", "旅游"] };
async function main({ params }: Args): Promise<Output> {
// 构建输出对象
const ret = {
"fields": {
"标题": params.video.desc,
"文案": params.caption,
"作者": params.video.author.nickname,
"下载地址": params.video.video.bit_rate[0].play_addr.url_list.pop(), // 最后一个视频地址
"分享链接": params.video.share_info.share_url,
"发布时间": params.video.create_time,
"点赞": params.video.statistics.digg_count,
"分享": params.video.statistics.share_count,
"评论": params.video.statistics.comment_count,
"收藏": params.video.statistics.collect_count,
"封面图": params.video.video.cover.url_list[0],
"时长": params.video.duration//毫秒时长转换成分秒模式
}
};
return ret;
}
function timestampToDateTime(timestamp) {
// 处理秒级时间戳(如果小于1e12,视为秒,转换为毫秒)
const msTimestamp = timestamp < 1e12 ? timestamp * 1000 : timestamp;
const date = new Date(msTimestamp);
// 获取年月日时,不足两位补零
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始
const day = String(date.getDate()).padStart(2, '0');
const hour = String(date.getHours()).padStart(2, '0');
// 拼接为 "年月日时" 格式(可根据需要调整分隔符)
return `${year}年${month}月${day}日${hour}时`;
}
// 测试示例
const timestamp1 = 1730188800; // 秒级时间戳
const timestamp2 = 1730188800000; // 毫秒级时间戳
console.log(timestampToDateTime(timestamp1)); // 输出示例:2024年10月30日00时
console.log(timestampToDateTime(timestamp2)); // 输出示例:2024年10月30日00时
function msToMinSec(milliseconds) {
// 处理非数字或负数情况
if (typeof milliseconds !== 'number' || milliseconds < 0) {
return '00:00';
}
// 转换为总秒数(向下取整)
const totalSeconds = Math.floor(milliseconds / 1000);
// 计算分钟和剩余秒数
const minutes = Math.floor(totalSeconds / 60);
const seconds = totalSeconds % 60;
// 补零并拼接为 "分:秒" 格式
return `${String(minutes).padStart(2, '0')}:${String(seconds).padStart(2, '0')}`;
}
// 测试示例
console.log(msToMinSec(63000)); // 1分3秒 → "01:03"
console.log(msToMinSec(125000)); // 2分5秒 → "02:05"
console.log(msToMinSec(59000)); // 0分59秒 → "00:59"
console.log(msToMinSec(3661000)); // 61分1秒 → "61:01"(超过60分钟也能正确处理)
console.log(msToMinSec(-5000)); // 无效值 → "00:00"

7.工作流的最终节点:
输出提示信息,如:飞书表格{{output}}写入了{{records}}\n

三、测试与运行
-
点击「试运行」,运行成功如图所示

成功写入飞书:

四、结语
通过 Coze 工作流,我们可以轻松实现 TikHub → 飞书多维表格 的数据自动化同步,大幅提升内容运营效率。无论是做小红书对标分析、选题策划,还是内容库建设,这套流程都能为你节省大量时间。
更多推荐


所有评论(0)