見出し画像

公式APIはイラン!TwitterBOT作成方法【IFTTT】

Twitter APIなんてイラン!

 利用申請するのに英語で理由を書かないといけないし、申請が通るのに数分だったり数時間だったりバラバラで、申請が却下されたときは理由が分からない。利用申請が通った後もTwitter社の都合でAPI利用権限が停止されるから公式APIは嫌い!TwitterAPIは使いたくない!イラン!でもTwitterBOT作りたい!
そういう訳でIFTTTでTwitterBOTを作りました。(Googleも使います)

この記事の対象者
・TwitterのAPI利用制限された、利用制限が怖い。でもTwitterBot作りたい
・無料で自由度の高いTwitterBotを自力で作りたい
・プログラムが、ちょっとわかる


IFTTTとは

 IFTTTとは、いろいろなwebサービスを組み合わせて連携させることのできるサービスです。例えばInstagramに画像を投稿したら自動的にTwitterにも投稿する、LINEとGoogleカレンダーを連携さカレンダーの通知をLINEで受け取るなどの連携が可能。簡単な連携ならプログラミング不要で連携ができます。最近流行りのノーコード、ローコードサービスです。
IFTTTではIF(もし~なら)That(~する)の2項目を設定します。
 IF:Instagramに投稿したら
 That:Twitterにも投稿する
このように設定していたら、自分でInstagramに投稿すると自動的にTwitterに投稿されます。


説明の流れ

 GoogleAppsScriptーIFTTT-Twitterと連携してツイートする仕組みを作ります。GoogleAppsScriptがメインなので自由度の高いBotが出来ます。
説明の流れはこうです
 1.IFTTTに登録する
 2.IFTTTの設定ーIF、That、KEYの取得
 3.GASのプログラム設定


1.IFTTTに登録する

 アカウントを登録

https://ifttt.com/maker_webhooks

 上のリンクから飛んで登録してください。登録せずにGoogleアカウントやFacebookアカウントでもログインすることもできます。


2.IFTTTの設定ーIF、That、KEYの取得

 アカウント登録後、画面右上のCreateボタンをクリックして作成画面に移動します。

画像1


IFTTTの設定ーIF:

IF(もし~なら)の部分を設定します。

「If This Add」をクリックしてwebhooksで検索して、 webhooksの中の「Receive a web request」を選択、Connectします。

画像15


画像2


画像3


画像4


画像5


Event Nameを入力します。適当に名前を付けますが、名前は控えておきましょう。

画像6


IFTTTの設定ーThat:
 That(~する)も同じ要領で設定していきます。Then That Addを選択して進み、「Twitter」で検索してTwitterの中の「Post a tweet」を選択します。

画像7


画像8


ここでTwitterへのログインと認証を求められます。「連携アプリを認証」をクリックして連携してください。


Tweet textの内容に{{Value1}}と記述します。Value1をそのままツイートするという意味です。 ちょっとわかりにくいと思うのですがとりあえずこうしてください。あとのプログラムでValue1パラメータで指定した文字列をツイートすることになります。

画像10


IFTTTの設定ーWebhooksのKEYの取得:

https://ifttt.com/maker_webhooks

上のリンク先へ進みます。
ここのページの右上のDocumentationをクリックします。

画像10


Documentationをクリックすると、
Your key is: ******* のように自分のキーが表示されます。このキーをメモします。

ifttt15 - コピー

Your keyの画面はX閉じしてもらって、この先は画面なりに進みます。
Continueをクリック

画像13

Finishをクリック

画像14

IFTTTの設定は終わりました。


3.GASのプログラム設定

 ではGAS側のプログラムを書きます。


const EVENTNAME = 'EventName'; //設定したEventNameに変えてください
const WEBHOOK_KEY = 'WebhooksのKEY';//メモしたWebhooksのKEY

//IFTTTからツイートする
const tweet = (text) => {
 tweetByIfttt(text);
}

const tweetByIfttt = (text) => {
 const url = 'https://maker.ifttt.com/trigger/' + EVENTNAME + '/with/key/' + WEBHOOK_KEY ;
 const data = {'value1':text};
 const headers = {
   "Content-Type": "application/json"
 };
 const options = {
   'method' : 'post',
   'headers' : headers,
   'payload' : JSON.stringify(data),
 };
 UrlFetchApp.fetch(url,options);
}

const testTweet = () => {
 tweet('🐹テスト🐹');
}

この部分は自分の環境に合わせて書き換えてください

const EVENTNAME = 'EventName'; //設定したEventNameに変えてください

'EventName'のところは「IFTTTの設定ーIF」で設定したEventName。

const WEBHOOK_KEY = 'WebhooksのKEY';//メモしたWebhooksのKEY

'WebhooksのKEY'は「IFTTTの設定ーWebhooksのKEYの取得」でメモしたKEYです。

GASのデバッグモードでtestTweetを実行してみてください。

画像12


これを応用すればGASでスクレイピングした結果をツイートしたり、
メールで受け取った内容をツイートしたりできます。

不動産競売情報をスクレイピングしてTwitterに投稿している例がこちら

画像16


IFTTTを使えば、少しのプログラミング量でいろいろなことができます。これはかなり面白いので今後も記事を書きたいと思います。


最後までありがとうございました。

#プログラミング #GoogleAppsScript #GAS #コピペ #Twitter #IFTTT #TwitterBOT #BOT #ツール #ノーコード #ローコード #TwitterAPI


お薦めの本

きちんとしたTwitterのBOTが作りたい方にお勧めの本は下のリンク↓
Kindle版は350円。読み放題に入っている方は無料で読めますのでお試しください。インターネットで無料情報を集めるのもいいですが、本や有料記事を買った方が結果的に時間の節約になります。アマギフをチャージしてから買った方がポイントと貯まってお得かも

他の記事





いいなと思ったら応援しよう!