【ノーコード入門】いいねしたツイートを自動保存するシステムを作る | Twitter/Airtable/Zapier

いつもNotionの記事が多いが、今回はノーコードをテーマに記事にする。ノーコードという言葉は近年よく聞くが、要するにプログラムを組むことなくシステムを構築する、という意味だと理解している。本記事のキーワードとしては、ノーコード、Airtable、Zapierなど。これらを使ってTwitterのいいねを自動的に保存する仕組みを作ったので備忘がてら紹介したい。

めちゃくちゃ間単にできたし、作るの楽しかった。ノーコードすごい。全部無料だし。

編集

A Journal編集です。YouTubeもやっているので見て欲しい。Twitterはこちら。

前提条件

  • Twitterのアカウントを保持していること
  • Airtableのアカウントを保持していること
  • Zapierのアカウントを保持していること
  • 英語に対して重度のアレルギーがないこと(AirtableとZapierは日本語未対応)

それぞれアカウントがない場合は今から開設すればOK。GoogleアカウントとGmailですぐに開設出来るぞ。ここに前提条件と書いたのは、上記の手順については解説しないという意図だ。

仕組みのイメージと完成形

使用するサービスを簡単に解説する。

  • Twitter → 説明不要のSNS。みんなアカウント持ってるよね。
  • Airtable → GoogleスプレッドシートやNotionのデータベースを高機能にしたような、データベースのウェブサービスと思っておいて良い。
  • Zapier → 最も理解に難しい。クラウドAPIのようなサービスといえばいいだろうか?Zapierと連携しているサービス(例えばTwitter)で、Zapierへの連携を許可するとZapierに対してデータを送信したり、連携サービスの指定の動作をトリガーとしてキャッチしたりすることが出来る。ここではTwitterと連携して情報を取得し、Airtableと連携して情報の書き込みを許可する。

仕組みのイメージとしては以下の通り。超簡単なのであまり説明することもないが、流れを書いておく。

  1. 指定アカウントが任意のツイートに対し「いいね」をすることがトリガーとなって処理が実行される
  2. TwitterよりZapierへ「いいね」されたツイートのデータを送付される
  3. Zapier内で取得したツイートの各情報をAirtableのどの項目へ割り当てるか設定し、Airtableにデータを送る
  4. Zapierよりデータを受領したAirtableがそのデータを使ってレコードを生成する
処理のイメージ図(下手くそで申し訳ない)

完成した画面は以下の通り。画像ファイルも取得して保存してくれるし、カードで一覧化されて見え方も良い感じ。

Airtableで一覧化された「いいね」したツイート

仕組みを構築する手順

ではこの仕組を構築、というより設定する手順を説明する。

Airtableの設定

AirtableではTwitterより送付される項目を保存することになる。よって保存したい項目セットでレコードを作るためのテーブルを用意する。ここではAirtableの使い方の解説はしないが、直感的に作成可能と思う。日本語対応していないものの、日本語のデータを扱うことは可能だ。

俺が設定した項目は以下の通り。項目名(項目タイプ)として表す。他にもアカウントプロフィールや、プロフィール画像、アカウントに設定されているURLなど取得したい項目があれば設定しておこう。

  • #(自動採番) ← 項目の主キーは良いものが思いつかなかったので自動採番としたが、何でもすきなもので良い
  • 作成日(日付) ← Tweet日付ではないく、いいねした日付
  • Tweet(長文テキスト)
  • Tweet URL(URL)
  • アカウント名(短テキスト)
  • アカウント URL(URL
  • メディアファイル(ファイル)
  • Tweet日付(短テキスト) ← Twitterから取得した日付をAirtableの日付に入れるとうまくいかなかったのでテキストプロパティとしている
青枠が設定した項目

Zapierの設定

メインの設定はすべてZapierで行う。Zapierの世界では一連の処理の流れのことをZapといい、Zapが1回動くことをTaskという。ZapはTrigger(処理のきっかけ)とAction(実際に処理)からなっている。

無料プランではいくつか制約があるが、この仕組には余り影響がないので割愛する。Zapierの詳しい使い方もここでは解説しない(別途生地にしたいとは思っているが)。

若干長くなるが、画面とともに解説したい。

① Zapieriにログインし、「MAKE A ZAP」をクリックする。

② TriggerのAppとしてTwitterを選択する。

③ Trigger Eventに「Liked Tweet」を選択する。

④ Chose accountで「+ Connect a new account」をクリックする。

⑤ サブ画面が立ち上がるので「Yes」をクリックする。

⑥ 連携アプリを認証する。これでTwitterからZapierに対してデータ送信を許可することができる。

⑦ 自身のアカウントを入力する。指定したアカウントの「いいね」を集めることができる。他の人の「いいね」を集めたければその人を指定する。

⑧ Testが成功すると「We found a tweet!」と表示される。Continueをクリックする。

⑨ 次にActionを設定する。AppにAirtableを選択する。

⑩ Action Eventに「Create Record」を選択する。受け取ったデータを使ってAirtableに1行作るから。

⑪ Twitterのときど同じく「+ Connect a new account」をクリックする。

⑫ APIキーを入力しろと出てくるので、Airtableのアカウント画面に戻り、APIキーを取得しよう。キーをコピペして「Yes, Continue」をクリック。

Airtableのアカウント画面(フォーカスするとキーが表示される)

⑬ 「Airtableの設定」で作ったBASEとTableを指定すると、作成したテーブルの項目が表示される。

⑭ Twitterから取得したデータを各項目に入れていこう。どの変数が何のデータかはテキストボックスにフォーカスすると例を出してくれるのでわかりやすい。画像が複数枚ある場合はすべて送信される。

⑮ Testが成功したらZapierでの設定は完了だ。「OFF」をクリックすると「ON」表示になり、作成したZapierが有効になった。

実際に動かしてみる

実際に処理を動かすには、誰かのツイートをいいねしてみるだけだ。簡単。無料プランの場合、処理の同期は15分に1度なので若干タイムラグが有るかもしれない。新規でアカウントを作った場合は14日間有料プランがお試しで適用されるので同期は2分に1回されるようだ。

Airtableを確認し、上手くデータが取得できていれば成功。調整したい場合はAirtableの項目を変更した後、Zapierの設定も必ず変更しよう。そうしないと新しい項目を作ってもデータが入ってこない。

まとめ

以上、本記事ではノーコードサービスを使ってTwitterで「いいね」したデータを保存する仕組みを構築する方法を紹介した。記事を読んで実践してもらったら分かるんだが、非常に簡単に組めるので感動するぞ。

ノーコードはエンジニアじゃなくてもシステムが組める、とよく謳われるように思う。プログラミングをするわけではないが、自身で作ってテストし、問題があれば解決する、そしてそのプロセスを楽しめる(めんどくさがらない)というエンジニア的な素養は必要だと思う。

また、決して万能のツールというわけではなく、融通が効かないことも多い。それらの点も理解して使いこなすことができれば非常に強力なツールになり得る。

興味がある人は本記事を参考に是非トライしてみては。それではこの辺で。

編集

TwitterYouTubeでもNotionの使い方などを発信しているのでぜひフォローして欲しい!どうぞよろしく。