はじめに
Notion Tips の第184回目は、昨日に続いて Notion の自動化の比較を行います。最初に外部からデータを追加する二つの方法を解説します。その後、デバイス上で動作する様々な自動化の仕組みの比較を行います。
外部からデータをアクセスする方法
Notion アプリやブラウザでデータを更新する以外でデータをアクセスする方法の一つに、Notion API があります。これは、特別な Web アクセスにより、データの取得・作成・更新・アーカイブをすることができます。データの入力および出力には JSON を用います。
一方、iOS および iPadOS の Notion アプリがインストールされていると、ショートカットの Notion アクションでページ作成やテキストブロックの追加などができます。
これらを比較すると以下のようになります。Notion API はこれ以外にも多くのことができます。
項目 | Notion API | ショートカットの Notionアクション |
---|---|---|
認可 | インテグレーションキー | Notion へのログイン |
ページ作成 | 任意のプロパティを設定 | タイトルと本文のみ |
ブロック追加 | ほぼ任意のブロック | テキストブロックのみ |
ページの検索 | 任意の条件 | テキスト検索のみ |
Notion AI | なし | あり |
ローカルデバイスからデータアクセスする方法
1. ショートカットアプリ
ショートカットアプリは、macOS, iOS, iPadOS, watchOS で動作させることができる自動化の仕組みです。ただし、OS によってできることが少し異なります。上で示した Notion アプリは macOS 以外で利用可能です。ただし、watchOS ではページ作成の際に、変数に入れた値がうまくタイトルとして記載できないことが多くあり、私は使っていません。このため、macOS, watchOS の場合には、Notion API を使って処理をすることが多いです。
Notion アクションの場合、ページタイトルだけしか設定できないので、そこにデータベースオートメーションを組み合わせることで任意のプロパティへのデータ登録をすることが多いです。例えば、一昨日紹介した 体重記録時に歩数も同時記録: Notion Tips (182) - hkob’s blog はタイトルに区切り文字を入れることで、そこで分割した数値などを別のプロパティに転記しています。
一方、Notion API を使って、Apple Watch から声でタスク登録するショートカットを普段から使っています(声でタスク登録 : Notion 解説(61) - hkob’s blog)。特に、Siri から起動すると全て声だけで完結するので、手放しでもタスク登録できて便利です。2年前に作ったものですが、いまだに現役で使い続けています。
2. Automator
macOS では選択中のテキストに対して、特定の処理をしてくれるサービスという仕組みがあります。以前は、これを簡単に作成できるものとして Automator がありました。現在、Automator 自体はほぼ使われず上記のショートカットに移行することになっています。最近、ショートカットアプリを見るとサービスメニューというものがあり、今はこちらで代替できそうです。
実際、3年前には任意のテキストをコードブロックとして追加する Automator を作成していました。今回、選択中のテキストをコードブロックとして追加する macOS サービスの改修: Notion Tips (176) - hkob’s blog の記事にて最近の環境に合わせて改修しましたが、せっかくなのでこれもショートカットに変更した方がよさそうです。今週くらいに時間を見つけてショートカットに書き換えてみましょう。
3. スクリプト言語
スクリプト言語を使って Notion API を叩くのもかなり有効です。ただし、JSON を記述するのは面倒なので、拙作の NotionRubyMapping などを使ってもらうと楽ができると思います。作業をスクリプトとして作成すると、cron などを使って毎日定時実行することができます。例えば、Notion Tips 連載まとめの自動追記 その2: Notion Tips (85) - hkob’s blog の記事では、このブログのリンクを連載まとめのページに毎日自動的に追加する方法を解説していました。
4. Alfred
私は Launcher アプリとして Alfred を使っています。最近は、Raycast の方が有名でユーザも多いと思いますが、古くからの Alfred のユーザで Legendary Supporter になっているので、いまだに Alfred を使い続けております。Alfred の有料版では、Workflow という自動化の仕組みを作ることができます。ちなみに、私の現在の Workflow の全体像をここに示します。Alfred の Workflow では ruby スクリプトを記載できるので、NotionRubyMapping を使って簡単にスクリプトを記載することができます。これが楽なため、かなりたくさんのことを Alfred で実現するようになっています。
ちなみに、前回紹介したのは「https://hkob.hatenablog.com/entry/2024/04/28/050000」で 4 月でした。データベースオートメーションのアップデートにより、いくつかいらなくなったものも出てきています。せっかくなので、一つずつ再度解説をしながら見直しをしていこうかなと思っていたりします。
おわりに
今日は、主に手元のデバイスで動作する自動化の仕組みを比較してみました。とりあえず、Automator のショートカットへの変更と Alfred の解説が宿題として残っています。なんとかこれで年末までのネタには足りるでしょうか。