【n8n】お気に入りの投稿をNotionに自動記録

木下です。最近自分の中でゼミブログブームが来てます。以前投稿した、やりたいことの一つにDifyの勉強を挙げていました。春休みにはyoutubeの動画を見て基本的な操作を覚えたり、他の人が作ったワークフローを使ってみたりしていたのですが、河合先生がいつかのゼミで触れていたn8nというサービスを触ってみたら予想以上に使いやすかったので、最近はDifyよりもn8nを中心に使っています。学生でも使えそうなワークフローを一つ紹介します!

ワークフローの概要

これは、**「Xで、自身がリポストした投稿を自動で収集し、その内容をカテゴリ別にNotionへ記録する」**というワークフローです。

ワークフローの流れ

▶️ 実行!

🌐 7日間の投稿を取得する(HTTP Requestノード)

🧹 引用だけを抽出(Functionノード)

🧠 タイトル・カテゴリ分類(Basic LLM Chainノード) ─ 🤖 Geminiに入力

📝 Notionに記録(NotionノードのCreate a database page)

週1で実行と書かれた「Schedule Trigger」を使う事で、毎週日曜に自動でこのワークフローが起動させることができます。

実行ボタンを押すと…

このように、あらかじめ作っておいたデータベースにリポストした投稿の情報が送られます!(例:イーロン・マスク)

カテゴリ・サブカテゴリに分類するのも、短めのタイトルを考えるのも全部AI(Gemini)がやってくれています。画像付きの投稿は、その画像のURLも取得してきてくれるので、Notion内で見ることもできます。本当は投稿自体のURLも取得できるのですが、XのAPI(Freeプラン)が月上限に達してしまうので、ワークフローからは泣く泣く外しています(◞‸◟)

制作の背景と目的

私はもともと、SNSで気になった投稿を「ブックマーク」機能で保存していたのですが、数が増えて、目的の投稿を探すのが難しくなってきました。そこで、Notionにカテゴリごとに整理して保存するようにしたのですが、毎回手動で仕分けするのがとても面倒で、結局ブックマークは溜まる一方でした。

そこで、「この作業をまるごと自動化できたら便利だな」と思い、今回のワークフローをn8nで作ろうと考えました!

がんばったこと

  • JavaScriptをたくさん使った
    一応Paizaで少しだけ勉強したことがあるのですが、忘れていて何も分からず結局全部ChatGPTに教えてもらいながら進めました。
7日前の日付を計算
リポストだけ抽出
  • JSON形式、エンドポイント、パラメータなど知らない概念が沢山出てきた
    めっちゃ調べました。
JSON Schema
JSON
  • n8nは部分的にしか日本語に対応しておらず、そもそも使い方が分からない
    前回の投稿でも話したのですが、公式のドキュメントが全部英語で大変でした。日本人の方が投稿しているyoutubeの動画もなくはないのですが、自分が使いたい機能を使っていなかったのでNotebookLMを使って頑張ったりしました。
NotebookLM

終わりに

大変だったけど楽しかったです。今回使ったノードのことだったら多分答えられると思うので、興味がある方は是非聞いてください。身の回りの作業を沢山自動化して、楽していきましょう(^^)/~~