Jump to content

借助 Quicker + Notion 构建自己的本地书影音库


河马君
 分享

Recommended Posts

豆瓣是一款我很喜欢的应用,可以标记自己看过的书影音并进行评分,同时其综合评分在筛选时也有一定的参考价值。但是随着国内网络环境的恶化,豆瓣上一些书影音的条目经常会「被消失」,甚至你的豆瓣账号也可能因各种各样的原因被封禁,导致你之前标记的所有数据在一夜之间就全都消失了。以上种种原因,使我一个多年的豆瓣忠实用户萌生了去意。

其实,豆瓣也有一些替代品,比如国外的 IMDBGoodreads,但是这些平台大部分国内用户无法流畅访问,而且它们不支持中文,对于国内书影音的评分也大多没有什么参考价值。后来,出现了去中心化的平台 NeoDB,需要通过 Mastodon 账户进行登录,其书影音的数据也基本来自于豆瓣或者用户的提交。

寻找了一圈,没有发现一个好用顺手的豆瓣替代品。既然这样,不如索性通过 Notion 强大的数据库构建一个自己的书影音系统。同时,Notion 还拥有完善的 API 支持,可以很方便地自动导入数据。接下来,我会分为书籍、影视、音乐三个部分来介绍该系统,并提供了相应的数据库模板、Quicker 动作和快捷指令。不过,在此之前,我们还需要一些准备工作。

准备工作

豆瓣历史数据导入

如果你的历史数据比较少,可以考虑跳过这部分,通过该方法导入的数据会有缺失,因此直接使用下文介绍的方法,将数据一项项手动导入是个更好的选择。

由于豆瓣自身不支持导出自己标记的内容,所以我们需要借助浏览器扩展 豆伴,其是一个豆瓣账号的备份工具。安装完成后,先在 豆瓣 网页中登录你的帐号,然后打开该扩展,点击新建任务,选择你要备份的项目,最后点击新建,等待任务备份完成后,就可以在设置中浏览备份了。

0bfeee34694bd2cf1e8e27007a38ffa5.thumb.png.3083cc20082987070d7225a450432bee.png

豆伴

 

点击右上角的「导出数据」,可以将我们标记的内容导出为一个 xlsx 表格。其中包含标题、简介、豆瓣评分、豆瓣链接、标记时间,个人评分,评论。如果你要将这些数据导入 Notion ,需要先将该 xlsx 表格另存为 CSV 文件,然后新建一个 Notion 页面,依次选择「Import」、「CSV」,最后上传文件并等待导入完成即可。

通过这种方式导入的数据并不完整,如果你想导入更多的数据,比如集数、海报、单集时长、上映时间、页数,就需要采用我下文介绍的方法。同时,我在下文进行介绍时,会以我分享的模板为例,如果你选择通过这种方式导入历史数据,那么需要将你自建的数据库属性的名称和类型改为和我的模板相同,否则无法通过我分享的 Quicker 动作和快捷指令自动导入新数据。

  • Notion integration 创建

Notion API 的使用依赖于 integration,所以我们需要先创建一个自己的 Notion integration。首先进入My integrations,点击「New integration」,「Name」和「Logo」随便填,接着选择要关联的 Workspace,然后在「User Capabilities」中选择第一项「No user information」,最后点击「Submit」,在自动跳转的新页面中会有该 integration 的 Token,请妥善保存,下文会多次用到。

e6b4405953540a3f6725215473fa5569.thumb.png.a01031ca80f95c1376b50bbdf5af2430.png

创建 integration

  • 安装 Quicker Connector 浏览器扩展

通过 Quicker 导入数据需要获取豆瓣网页的信息,所以我们需要先安装 Quicker Connector 浏览器扩展。安装完成后,打开网址同步并授予权限。如果连接状态显示为「已连接」,则表示与 Quicker 客户端匹配成功,可以正常使用了。

1425fda9f9695d03cc28d2ce98966287.png.224e42157ef882de3a0a4030baf286a2.png

Quicker Connector 浏览器扩展

📖 书籍

  • 数据库

首先,打开我分享的「书籍库」模板,然后点击右上角的「Duplicate」,将该数据库复制到你自己的 Notion Workspace 中。该数据库一共包含了 15 项属性,其中封面、书名、作者、出版社、页数、豆瓣评分、豆瓣链接、ISBN 通过豆瓣自动导入,日期、类别、个人评分(十分制)、文件需要我们手动填写,状态(包括想读、在读、读过、放弃,默认为想读)、综合评分(豆瓣评分和个人评分的平均值)、创建时间由 Notion 自动生成。

此外,该数据库一共有六种不同的视图。「总览」中以 Table 的形式展示了所有书籍的各项属性,「想读」、「在读」、「读过」中,以 Gallery 的形式分别展示了对应状态的书籍,「最佳」中包含了个人评分为 10 的书籍,「年度统计」中包含了今年读过的所有书籍,并自动统计了总页数,方便进行年度总结。

aa12474e5b1e8d317f135e793eee54c0.thumb.png.2ce44860e5564108ca98b6e5ceb1a49b.png

书籍库

如果你对模板不满意,可以自行调整数据库的视图形式、显示属性、过滤选项、排序规则,但是请不要更改通过豆瓣自动导入的八项属性的名称和类型,否则无法通过下文的 Quicker 动作导入新数据。影视库与音乐库中自动导入的属性也同样不要更改其名称和类型,下文不再赘述。

  • 导入新数据

第一步是将上文创建的 integration 添加到书籍库中,点击页面右上角的「•••」,然后在「Connections」中搜索并添加对应的 integration 即可。

608c52f283e8ae09a99c247aaa604c7c.thumb.png.3edb7581f014d3d05765aa753762ed37.png

添加 integration

第二步是安装 Quicker 动作 「豆瓣书籍导入 Notion」,然后进入该动作的编辑页面,在右侧的变量「token」中填入上文得到的 integration Token,在「database_id」中填入书籍库网址中 ? 前和 \ 后的字符串,这是 Database ID,在「notion_url」中填入书籍库的整个网址,最后保存退出即可。

f3d52893a8791e72b6b42b77aaf419dd.png.fd5991139f25477f90d20097d1c47581.png

Database ID

第三步是在我们需要导入的豆瓣读书网页上运行该动作,就可以将书籍的各项信息自动导入到 Notion 的书籍库中,在导入完成后还会自动打开书籍库的页面,方便你进行二次编辑。

64c26db273d27d7d9429fe7c00d7d797.thumb.gif.33b04040db55302871be254ff28a005d.gif

导入书籍

📺 影视

  • 数据库

首先,打开我分享的「影视库」模板,然后点击右上角的「Duplicate」,将该数据库复制到你自己的 Notion Workspace 中。相比于书籍库,影视库会更加复杂,包含更多的属性,总共有 19 个。其中,海报、名称、类型、标签、制片地区、导演(如有多个导演,默认导入前三个)、豆瓣评分、豆瓣链接、单集时长、集数、上映日期通过豆瓣自动导入,日期、个人评分、Trakt 链接需要我们手动填写,状态(包括想看、在看、看过、放弃,默认为想看)、综合评分(豆瓣评分与个人评分的平均值)、总时长(集数乘以单集时长)、上映状态(根据上映日期进行判断,默认为未上映)、创建时间由 Notion 自动生成。

此外,该数据库一共有八种不同的视图,「总览」中以 Table 的形式展示了所有影视的各项属性,「想看」「在看」「看过」中分别包含了对应状态的影视,「最佳」中包含了个人评分为 10 的影视,「年度统计」中包含了今年看过的所有影视,并自动统计了观看的总时长,方便进行年度总结。「未上映」中包含了上映状态为未上映的影视,「待补充」中包含了有部分属性为空的影视,方便我们日后进行手动补充。

8f91a4906783ecb6f9d3e07ca110e0c9.thumb.png.6f3e282bec139b9dbfb0a41b4f3fd0ba.png

影视库

  • 导入新数据

影视的导入方法和上文的书籍基本相同。首先,在影视库中添加 integration,然后安装 Quicker 动作 「豆瓣影视导入 Notion」,填入三项变量的默认值,其中「token」是相同的,其余两项需要修改为影视库的 Database ID 和网址。最后,在需要导入的豆瓣电影网页上运行该 Quicker 动作,就可以将影视的各项信息自动导入到 Notion 的影视库中。在导入完成后,还会自动打开影视库和 Trakt 的搜索界面,方便进行二次编辑。

a53ccaa15ec4c576e4eda5f21c07e415.thumb.gif.1ad6dce2942f907100623846cf323322.gif

导入影视

Trakt 是一款影视追踪应用,能够在剧集更新或者电影上映时提醒你。其现在已经推出了官方的 iOS 客户端,可以免费使用。如果你没有这方面的需求,可以在影视库中删除该列属性,并在 Quicker 动作中删除「在 Trakt 中进行搜索」的步骤。

🎵 音乐

豆瓣中音乐部分的数据质量相比于书籍和影视要差不少,且更注重于整张专辑,因此构建音乐库我们需要另辟蹊径,将我们现有的歌单导入到 Notion 中,而非豆瓣中标记的专辑。下文以 Apple Music 为例进行介绍。

  • 歌单导出

由于 Apple Music 本身不支持导出歌单,所以我们需要借助  Tune My Music。Tune My Music 是一款在不同的音乐服务平台之间迁移歌单的工具,支持众多的音乐服务,比如 Apple Music、Spotify、YouTube Music,免费版只支持一次性导出 500 首歌曲,如果你单个播放列表的歌曲数量很多,可以考虑拆分成多次导出。

打开网站后,首先创建或登录账号,然后点击「让我们开始吧」,随后选择 Apple Music 音乐服务,登录我们的 Apple 账号,接着选择要导出的播放列表,点击下一步,再选择「导出文件」,选择 CSV 格式,最后点击「开始移动我的音乐」。导出完成后,会自动下载一个名为「My Apple Playlist」的 CSV 文件。

2732ca637170ce684ca18754372994f8.thumb.png.739cbe50981649a4a8d34d96fd770793.png

Tune My Music

请不要直接打开该 CSV 文件,因为其中的中文内容由于编码的原因会显示为乱码。我们先在 Excel 中新建一个空白的工作簿,接着点击上方的「数据」,选择「从文本/CSV」,然后导入我们上文得到的文件。Excel 会自动分析格式、分隔符等信息,点击「加载」后就可以得到一个中文显示正常的 xlsx 文件,最后再将该文件另存为可以导入 Notion 的 「CSV UTF-8逗号分隔(*.csv)」文件。

d1cacc1f291563ccbe66987fed2f26b0.thumb.png.3f6fd67d11a37959b647be90464b684d.png

从文本/CSV获取数据

在歌单导出完成后,如果你担心数据泄露,可以在 Apple Music 的账户中取消对 Tune My Music 的授权。

b97e954f33135eda1db9f10573237c20.thumb.png.3dddee5ca9b0c831d28a3469b6cbe137.png

取消授权

  • 数据库

首先打开我分享的「音乐库」模板,点击右上角的「Duplicate」,将该数据库复制到你自己的 Notion Workspace 中。该数据库是书影音三者中最简单的,只有 7 项属性,其中歌名、艺人、专辑是通过快捷指令自动导入的,播放列表和标签需要我们手动填写,状态(包括想听、在听、不听,默认为在听)和创建时间是由 Notion 自动生成的。

该数据库一共有四种不同的视图,「总览」中包含了所有音乐的各项属性,「播放列表」中包含了所选播放列表的歌曲,「艺人」中包含了所选艺人的歌曲,「专辑」中包含了所选专辑的歌曲,你可以自行调整过滤选项。

e7a5d1ec38d9b9d75afac1311846d75e.thumb.png.a51b166e32425cba0544018a2c5cc5fe.png

音乐库

最后,我们需要将上文导出的歌单导入该音乐库中。在导入之前,需要先修改该 CSV 文件,将「Track name」改为「歌名」,「Artist name」改为「艺人」,「Album」改为「专辑」,「Playlist name」改为「播放列表」,并将第一行「Column」和最后一列「Type」删除,保存并退出。然后点击音乐库页面右上角的「•••」,选择「Merge with CSV」,上传修改后的 CSV 文件,等待其导入完成即可。在导入完成后,可以将播放列表的属性类型改为「Select」或者「Multi-select」,方便下次快速选择。

  • 导入新数据

和前文一样,先在音乐库中添加上文创建的 integration,然后安装 苹果音乐导入 Notion 快捷指令,在两处文本中分别填入 integration token,音乐库的 Database ID,然后保存退出。

ba70d4a9dda56cd743f430d8083db153.thumb.png.1ef707f1dfc5d78ad821675afaecb1be.png

苹果音乐导入 Notion

在播放 Apple Music 时,运行该快捷指令,就可以将当前播放音乐的歌名、艺人、专辑自动导入到音乐库中。为了更方便地使用,我们可以将该快捷指令添加到「辅助触控」中,具体方法是进入 iPhone 的设置,然后依次点击「辅助功能」、「触控」、「辅助触控」、「自定义顶层菜单」,找到并添加该快捷指令。添加完成后,就可以在需要导入时点击屏幕上的辅助触控球,快速运行快捷指令将当前播放的音乐信息导入到 Notion 的音乐库中了。

由于 Spotify、YouTube Music 不支持通过快捷指令获取音乐信息,所以需要借助 Zapier 等自动化平台通过喜欢等操作来触发导入,本文不作展开,有需要的可以自行研究。至于国内各大封闭的音乐平台,则不在本文的讨论范围内。

更多玩法

通过上述步骤,我们已经完成了书影音系统的底层构建,但是 Notion 数据库最强大的功能在于其丰富的可扩展性。例如,我们可以邀请朋友进入影视库进行协作,一起添加想看的电视剧,一起筛选想看的电影。还可以利用数据库的 Relation 和 Rollup 属性,将书影音库与日历进行关联,从而多维度展示我们一天的经历。当然,以上只是我的抛砖引玉,更多的玩法还是要靠大家自行探索,探索的过程也是 Notion 这类工具所能带给我们的一大乐趣。

存在的问题

诚然,没有什么系统是完美的,在我使用的过程中,还是遇到了一些小问题:

  • 豆瓣评分无法实时变动,一些新的书影音条目,评分会随着人数和时间发生比较大的变化,需要我们手动更改。
  • 部分图片无法正常显示,由于豆瓣图片链接的变动,小部分封面或者海报会失效,需要自己重新手动添加。
  • 时间过滤不正确,在「年度统计」的视图中,对于日期的过滤仅仅依赖于开始时间,如果一部剧的日期开始时间是 2022 年,结束时间是 2023 年,那么这部剧并不会包含在今年的过滤结果中,我已经向 Notion 反馈了这个问题。
  • Notion 老生常谈的性能问题,当数据库中积累的数据越来越多,对你设备的性能要求就越来越高,否则浏览时会有些许卡顿,尤其是移动端。

瑕不掩瑜,对于整个书影音系统的使用我个人的体验还是挺满意的。看到这里,有人可能会有疑问,Notion 不也是一个云端的应用吗?没错,但是 Notion 支持多种导出方式,我们可以通过定期备份,来实现云端一份数据,本地一份数据。

总结

如果你有许多的历史数据,那么前期的导出、整理、导入的工作量还是挺大的。不过当整个书影音的系统构建完成后,通过上文介绍的方法导入新数据就很方便了,整体的使用体验也会更加流畅。虽然我目前还在使用豆瓣来查看一些热门榜单、口碑榜单,从中寻找自己感兴趣的内容,但对于离开豆瓣的决定我并没有后悔。对于一个封闭的系统,我们要想办法打破禁锢,将数据掌握在自己的手中。

链接到评论
分享至其他网站

登录后评论

您需要注册或登录后才可互动哦!

创建帐号

注册帐号,开启新旅程!

注册

登录

已有帐号?在此登录。

即刻登录
 分享

×
×
  • 新增...