快捷指令与Notion API联动:打造自动化追剧管理系统 📅 2026/8/4 15:40:13 大家好我是专注于效率工具与自动化流程的技术博主。在日常追剧时你是否也遇到过这样的困扰看到一部好剧随手记下名字但转头就忘想记录追剧进度和感想却找不到一个统一、美观的地方看到精彩的剧评或解析链接散落在各个App里难以整理。今天我们就来解决这个痛点。本文将手把手教你如何利用苹果的“快捷指令”App和强大的笔记工具Notion打造一个完全自动化、个性化的追剧管理系统。这不仅仅是简单的记录而是实现从“发现剧集”到“记录进度”再到“整理资料”的全流程自动化。无论你是效率工具爱好者还是想提升生活条理的追剧党都能从本文中获得一套即拿即用的解决方案。1. 核心工具与概念解析在开始搭建之前我们首先要理解本次实战中用到的两个核心工具快捷指令和Notion以及它们如何协同工作。1.1 什么是快捷指令快捷指令Shortcuts是苹果设备iPhone、iPad、Mac上的一款强大的自动化应用。它的核心思想是“将多个步骤的操作串联成一个指令”从而实现一键自动化。你可以把它理解为一种可视化的编程工具通过拖拽“动作”模块就能创建出功能复杂的自动化流程而无需编写代码。在我们的追剧系统中快捷指令将扮演“前端采集器”和“自动化触发器”的角色。例如它可以快速捕捉信息从你复制的剧名、豆瓣链接中提取关键数据。与Notion交互将整理好的数据自动发送到你的Notion数据库。触发提醒在特定时间提醒你更新追剧进度。1.2 什么是NotionNotion是一款集笔记、任务、数据库、Wiki于一体的All-in-One工作空间。它的数据库功能尤其强大支持多种视图表格、看板、日历、画廊等和丰富的属性文本、单选、多选、日期、关联等非常适合用来构建结构化的管理系统。在我们的项目中Notion将作为“中央数据仓库”和“展示面板”。我们会创建一个“追剧数据库”用来存储所有剧集的信息、进度、评分和感想。1.3 二者如何联动整个系统的自动化流程可以概括为以下几步触发你在任何App中看到想追的剧复制其名称或链接。处理运行一个定制好的快捷指令该指令会解析你复制的内容例如调用豆瓣API搜索剧集详情。写入快捷指令将获取到的剧集信息如名称、评分、简介、海报图作为一条新记录自动添加到Notion的追剧数据库中。管理与回顾你可以在Notion中美观地查看所有剧集用看板视图管理“想追/在看/已追完”状态在页面内写剧评关联相关文章。接下来我们就从零开始搭建这套系统。2. 环境与账号准备工欲善其事必先利其器。在开始创建自动化流程前请确保准备好以下环境。2.1 设备与软件要求苹果设备一台运行iOS 14/iPadOS 14或更高版本的iPhone或iPad或者运行macOS Monterey或更高版本的Mac。快捷指令是系统级应用请确保系统已更新。快捷指令App通常在设备上已预装。如果没有请前往App Store搜索“快捷指令”下载。Notion账号你需要一个Notion账号。可以访问 notion.so 注册免费账户个人使用免费版功能已足够强大。2.2 创建Notion集成并获取密钥要让快捷指令能向你的Notion数据库写入数据必须通过Notion的官方API。这就需要创建一个“集成”并获取连接密钥。访问 Notion开发者页面 。点击“ New integration”按钮。为你的集成命名例如“我的追剧助手”。选择关联的工作区通常就是你个人账号的工作区。点击“Submit”创建。创建成功后页面会显示“Internal Integration Token”。请立即复制并妥善保存这个令牌它只会显示一次。这个令牌就是快捷指令用来验证身份的密钥。2.3 在Notion中创建追剧数据库我们需要一个地方来存放数据。在Notion中创建一个新的页面作为我们的追剧库。在Notion中新建一个页面命名为“我的追剧库”。在页面中输入/table并选择 “Table - Inline” 或 “Table - Full page” 来创建一个内嵌或全页数据库。现在我们来定义数据库的列属性。默认会有“Name”列我们将其重命名为“剧名”。然后点击“”添加以下新属性状态Select类型。选项可设为“想追”、“在看”、“已弃剧”、“已追完”。类型Select类型。选项可设为“国产剧”、“美剧”、“日剧”、“韩剧”、“动漫”、“其他”。豆瓣评分Number类型。我的评分Number类型。海报Files media类型。豆瓣链接URL类型。简介Text类型。追剧进度Text类型如“第5集/共24集”。开始日期Date类型。结束日期Date类型。剧评/感想Text类型。创建完成后你的数据库应该类似下图视图可调整 此处为描述实际无图一个拥有剧名、状态、类型、评分等列的表格。3. 核心原理快捷指令与Notion API通信这是本教程的技术核心。快捷指令本身不能直接“懂”Notion我们需要通过HTTP请求调用Notion API来实现数据操作。3.1 Notion API基础Notion API允许我们通过发送HTTP请求来创建、读取、更新和删除数据库中的页面每条记录就是一个页面。我们主要使用“创建页面”接口。关键点端点https://api.notion.com/v1/pages请求方法POST认证在请求头中携带Authorization: Bearer YOUR_INTEGRATION_TOKEN和Notion-Version: 2022-06-28。数据格式请求体为JSON格式需要包含父数据库ID和要设置的属性值。3.2 获取数据库ID每个Notion数据库都有一个唯一的ID。获取方法在网页版Notion中打开你的追剧数据库。浏览器地址栏的URL格式通常为https://www.notion.so/yourworkspace/YOUR_DATABASE_ID?v...复制YOUR_DATABASE_ID部分。它是由32个十六进制字符组成的字符串有时会被-分隔。在用于API时需要去掉所有的-。例如如果URL中是.../a1b2c3d4-e5f6-...那么数据库ID就是a1b2c3d4e5f6...。3.3 理解属性值的JSON结构在API请求中为数据库属性赋值需要遵循特定的JSON结构。不同类型的属性结构不同。以“剧名”这个标题属性为例{ 剧名: { title: [ { text: { content: 漫长的季节 } } ] } }以“状态”这个选择属性为例{ 状态: { select: { name: 想追 } } }以“豆瓣评分”这个数字属性为例{ 豆瓣评分: { number: 9.4 } }以“海报”这个文件属性为例需要图片URL{ 海报: { files: [ { name: poster.jpg, external: { url: https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2886898146.jpg } } ] } }在快捷指令中我们需要通过“字典”和“文本”动作来构建这样的JSON数据。4. 完整实战构建“一键添加剧集”快捷指令现在我们将创建一个功能完整的快捷指令。它实现以下流程你复制了剧名 - 运行指令 - 自动搜索豆瓣获取详情 - 弹出表单让你确认和补充信息 - 自动写入Notion数据库。4.1 创建新快捷指令并获取输入打开“快捷指令”App点击右上角“”创建新指令。命名为“一键添加剧集到Notion”。添加第一个动作“从输入中获取文本”。这个动作会获取你运行指令前复制的内容。添加“文本”动作将内容设置为“https://api.wmdb.tv/api/v1/movie/search?q”这是一个第三方、公开的影视数据API比直接调用豆瓣API更简单稳定。然后添加“拼接文本”动作将API链接和上一步获取的剧名拼接成完整的搜索URL。4.2 调用API获取剧集详情添加“获取URL内容”动作。将上一步拼接好的URL填入“URL”字段。添加“从URL内容中获取字典值”动作。因为API返回的是JSON数组我们需要提取第一条结果。在“获取”选择“列表中的第一项”。现在我们可以从这条结果中提取具体信息了。连续添加多个“从字典中获取值”动作分别获取name- 存储到变量剧名rating- 存储到变量豆瓣评分注意此API的rating字段可能结构不同可能需要rating.rating请根据实际返回JSON调整或先“显示结果”查看结构data-poster- 存储到变量海报URLdata-description- 存储到变量简介重要由于API返回的数据结构可能变化强烈建议在构建指令时先添加一个“显示结果”动作来查看“获取URL内容”返回的完整JSON以便准确找到所需字段的路径。4.3 构建Notion API请求体这是最复杂的一步我们需要用快捷指令的动作“拼凑”出符合Notion API要求的JSON。添加“字典”动作我们将用它来构建最外层的请求体。先添加两个键值对键parent值{“database_id”: “YOUR_DATABASE_ID”}这里需要再嵌套一个“字典”动作来构建这个值并将你的真实数据库ID填入。键properties值我们留空下一步专门构建。再添加一个“字典”动作用于构建properties的值。根据我们之前设计的数据库属性逐一添加剧名键为“剧名”值为{“title”: [{“text”: {“content”: “[剧名变量]”}}]}。这需要嵌套多层“字典”和“列表”动作来构建。豆瓣评分键为“豆瓣评分”值为{“number”: [豆瓣评分变量]}。海报键为“海报”值为{“files”: [{“name”: “poster.jpg”, “external”: {“url”: “[海报URL变量]”}}]}。简介键为“简介”值为{“rich_text”: [{“text”: {“content”: “[简介变量]”}}]}。状态键为“状态”值为{“select”: {“name”: “想追”}}可以先设默认值。类型键为“类型”值为{“select”: {“name”: “”}}留空手动选择。将构建好的这个“字典”即properties作为一个整体赋值给第一个“字典”动作的properties键。4.4 弹出表单让用户确认和补充信息在发送请求前最好让用户确认一下自动获取的信息并补充API没有的信息如“我的评分”、“类型”。在构建完properties字典后添加“要求输入”动作。在“提示”中可以这样写“请确认并补充剧集信息\n剧名[剧名变量]\n豆瓣评分[豆瓣评分变量]\n\n请选择类型”。将“输入类型”设置为“选择”。在“选择项”中输入我们之前定义的类型选项如“国产剧,美剧,日剧,韩剧,动漫,其他”用逗号分隔。将用户的选择存储到变量用户选择类型。更新properties字典中“类型”字段的值为{“select”: {“name”: “[用户选择类型]”}}。可以再添加一个“要求输入”动作来让用户输入“我的评分”输入类型为“数字”。4.5 发送HTTP请求到Notion API添加“获取URL内容”动作这是第二个用于发送POST请求。配置该动作URL填入https://api.notion.com/v1/pages方法选择POST请求头添加两个头Authorization:Bearer YOUR_INTEGRATION_TOKENNotion-Version:2022-06-28Content-Type:application/json请求体选择“文件”然后选择我们第一步构建的那个包含parent和properties的顶级“字典”变量。最后添加一个“显示通知”动作提示“剧集「[剧名变量]」已成功添加到Notion追剧库”。4.6 指令测试与调试完成构建后点击快捷指令底部的“播放”按钮进行测试。先去豆瓣或任何地方复制一个剧名比如“漫长的季节”。回到快捷指令App运行你刚创建的指令。观察每一步的执行情况。如果中途报错快捷指令会停在出错步骤。常见问题API密钥或数据库ID错误检查令牌和ID是否正确是否去掉了-。JSON结构错误使用“显示结果”动作在每一步后查看变量内容确保构建的字典格式正确。网络错误检查设备网络。5. 功能扩展更多自动化场景基础功能实现后我们可以让这个系统变得更智能。5.1 创建“更新追剧进度”指令这个指令更简单主要用于更新已存在剧集的状态和进度。创建新快捷指令“更新追剧进度”。添加“从列表中选取”动作列表来源需要通过另一个“获取URL内容”动作调用Notion API查询你的追剧数据库需要用到查询接口筛选出“状态”为“在看”的剧集提取“剧名”供选择。这是一个进阶功能涉及Notion查询API初期可简化简化方案直接使用“要求输入”动作手动输入剧名。再添加“要求输入”动作输入新的进度如“第10集/共24集”。构建一个只包含需要更新字段如“追剧进度”的字典。使用“获取URL内容”动作调用Notion API的“更新页面”接口PATCH https://api.notion.com/v1/pages/{page_id}将新进度更新到对应的剧集页面上。5.2 添加自动化触发条件让快捷指令在特定场景下自动运行无需手动点击。共享表单在快捷指令编辑页面打开“在共享表单中显示”并选择“文本”。之后你在任何App选中剧名文本点击分享就能在分享菜单中看到这个指令一键运行。自动化在快捷指令的“自动化”标签页创建个人自动化。例如特定时间提醒设置每晚9点询问是否要记录今日追剧情况。剪贴板变化当剪贴板内容包含“豆瓣”或“ep”等关键词时自动建议你运行“一键添加剧集”指令。6. 常见问题与排查思路在搭建和使用过程中你可能会遇到以下问题问题现象可能原因解决思路快捷指令运行时报错“无法获取URL内容”1. 网络连接问题。2. 第三方影视API不稳定或失效。3. URL拼接错误。1. 检查设备网络。2. 使用“显示结果”动作查看“获取URL内容”步骤的完整URL和返回内容确认API可用。3. 考虑更换更稳定的API源或简化流程只手动输入剧名。Notion API返回“401 Unauthorized”1. Integration Token错误或已失效。2. 请求头中Authorization格式错误。1. 重新在Notion集成页面复制Token确保Bearer后面有一个空格。2. 检查Notion-Version请求头是否正确。Notion API返回“400 Bad Request” 或 “object invalid”1. 数据库ID错误。2. 请求体JSON格式错误特别是属性值的结构不对。3. 属性名与数据库中的列名不匹配注意大小写和空格。1. 核对数据库ID确保已去掉“-”。2. 在快捷指令中在发送请求前添加“显示结果”动作查看构建的完整字典变量与本文第3.3节的格式对比。3. 确保属性名与Notion数据库中的列名完全一致。海报图片无法显示在Notion中1. 图片URL链接不可用或需要特殊访问权限如豆瓣图片有反盗链。2. Notion文件属性格式错误。1. 尝试在浏览器中直接打开海报URL看是否能访问。豆瓣图片通常有反盗链第三方API提供的链接可能稳定些。2. 检查构建的“海报”属性字典格式确保是external类型并包含有效的url。快捷指令在自动化触发时不运行1. 自动化设置未关闭“运行前询问”。2. 触发条件不准确。1. 在自动化设置最后一步关闭“运行前询问”。2. 重新检查自动化触发条件例如剪贴板内容是否完全匹配预设关键词。7. 最佳实践与工程化建议将个人自动化工具做得更可靠、更易维护。API密钥管理切勿将你的Notion Integration Token硬编码在快捷指令中并分享给他人。如果需要分享指令可以将Token作为“文本”动作的内容然后使用“编码为Base64”进行简单混淆并在指令开头解码使用。更安全的方法是使用iCloud的“文本”文件存储密钥快捷指令运行时从中读取。错误处理在关键的“获取URL内容”和“字典获取值”步骤后添加“如果”条件判断结果是否为空或包含错误然后通过“显示通知”或“记录到日志”动作给出友好提示避免指令无声失败。模块化设计如果你创建了多个与Notion交互的指令如添加、更新、查询可以将“构建请求头”、“获取数据库ID”等通用操作制作成独立的“子快捷指令”然后在主指令中“运行快捷指令”来调用提高复用性和可维护性。数据备份Notion数据库是你的核心资产。定期利用Notion的导出功能导出为Markdown或HTML将整个追剧库备份到本地或网盘。隐私考虑本教程使用的第三方影视API是公开的但如果你自行寻找其他API请注意其隐私条款。你添加到Notion的数据是私有的只要保管好你的账号和集成令牌即可。通过本文的步骤你已经成功搭建了一个高度自动化的个人追剧管理系统。这套组合拳的核心思想——用快捷指令作为灵活的前端触发器用Notion作为结构化的数据后端——可以复用到无数场景读书管理、健身记录、灵感收集、项目规划等等。关键在于理解两者之间通过API进行数据通信的桥梁作用。一旦打通了这个流程你的数字生活自动化就将打开一扇新的大门。不妨从今天记录的下一部剧开始享受科技带来的整洁与高效吧。如果在实践过程中遇到任何问题欢迎在评论区交流探讨。