GASでTwitterAPIをたたいてChatWorkに送信する

gasBackEnd

「今回はTwitterのトレンドを取得してChatWorkに投稿する」をGASで行います。
トレンドのほかにワード検索なども可能なので試してみてると楽しいです。

スポンサーリンク

事前準備と各アプリケーションでの主要作業

チャットワーク

アカウント作成
APIキー取得
グループ作成

GAS

プロジェクト作成
アプリケーション公開(URL発行)
スクリプト記述
定時実行(トリガー)設定

Twitter

アカウント作成
Twitter Developer Accountの申請
APIキー生成、取得

手順

スポンサーリンク

ある程度細かい手順は省いています。

  1. Twitter Developer Accountの申請
  2. GASプロジェクトURL発行
  3. Twitter APP 生成
  4. GASスクリプト記述

Twitter Developer Accountの申請

申請に時間がかかる場合があるので作業前に申請しておきましょう。
申請時には英文でのフォーム入力がありますがGoogle翻訳でそのまま投げました。

GASプロジェクトURL発行

先にGASプロジェクトを作成し、URLの発行をしたほうがスムーズに進められます。
[公開]-[ウェブアプリケーションとして導入]
うまくいかない場合は版の管理や公開権限など変更してみてください。

Twitter APP 生成

Twitter Developer Accountが承認されTwitter Developer PlatformにログインできるようになったらAPPを作成します。
APP作成時にアプリケーションURLを入力する項目があるのでGASプロジェクトURLを入力します。
APP作成が成功したらAPIキーが発行されるのでメモしておくかアクセスしやすいようにしておきましょう。

GASスクリプト記述

各種APIキーは定数化などグローバルなスコープで呼び出せるようにするとあとあと書きやすくなるかと思います。
極論お好みで。
※コード公開などする際はAPIキーは必ず伏せましょう。大変なことになります。

記述ポイントとしては下記4点です。個人的には切り分けて作業するのがおすすめです。

  1. Twitter Bearerトークンの取得(TwitterAPI実行に必要)
  2. Twitterトレンドの取得(jsonで返ってくる)
  3. 取得したjsonを整形する
  4. 整形したデータをChatWorkグループに送信する

チャットワークライブラリの導入

チャットワークにデータを送信するのを簡単に可能にするためライブラリを入れましょう。
[リソース]→[ライブラリ]

スクリプトID: M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT

最新版を追加する。

定時実行設定

トリガーを時間設定にして関数実行

おわりに

1から4までコードの単体テストができていればもうほぼ勝ちです。
おめでとうございます。おつかれさまでした。
コードは気が向いたら公開します。

参考サイト

GET trends/place
Twitterのトレンドを取得する際に指定できる日本の都市 - Qiita
Twitterのapiを叩いてトレンドを取得する際にWOEIDを指定して、特定の地域のトレンドを取得することができます。 しかし、日本全国の都市を指定できる訳ではなくtwitter側で決められた場所だけです。 このAPIを叩けば指定可...
GASを使って、Twitter検索した結果をSlackへ定期投稿してみた - Qiita
この記事について Google Apps Script(以下、GAS)を使って、情報収集のために、ある固定のキーワードで定期的に検索を行い、Slackへ自動投稿する、ということをやってみた備忘録です。 GASから定期的に固定メッ...

コメント

タイトルとURLをコピーしました