Google Apps Script応用 | Twitter Bot 作成 | Google Apps Script(GAS)の応用編です



最終更新日:2016-11-10

Twitter Bot 作成

Google Apps Scriptで、TwitterのBotを作成します、

全て作成していたら大変ですし、今の段階では私にその技量はありませんので、

ネットに公開されているものを参考に作成しました。

従って、ここでは手順の紹介がメインで、コード等はリンク先を参照してください。


この記事は、自信の備忘録も書いています。


参考にしたページ


最初は、
[GAS]Google Apps Scriptでツイートを投稿する
こちらを参考に始めました。

準備

Twitter Developers
ここで、
新規アプリケーションを登録します。

英語なので、戸惑う事しきり・・・



最初は右上の、「Join」で参加します。
名前やら、Emailの入力がありますので、全部入れて、
Sign Up

次回からは、
My apps
で自分のページに入れます。

右上の、


ここで、新規アプリケーションを登録を登録します。
要れる項目は多いですが、
必須項目以外は適当に流しても構いせん。
後で修正できますので。

ここで間違いなく入れなければならないのは、
Callback URL
ここに、
https://script.google.com/macros/d/スプレッドシートキー/usercallback

スプレッドシートキーは、
https://docs.google.com/spreadsheets/d/○△□/edit#gid=0
URIの、この「○△□」の部分になります。

最後の段階で、

この、
Keys and Access Tokens
有効にするために、一番下のボタン押下が必要になります。


以上でTwitter側は終わりで、
スプレッドシートで、スクリプトを作成します。

ここで、ちょっと躓いてしまって、
ここからは、
Google Apps ScriptでOAuthConfigのサポートが終了してTwitter botが危険そうだったので変更
こちらのスクリプトを使う事にしました。
こちらは、かなり親切に書かれているので、書かれている通りに進めばほぼ問題ありませんでした。
ただし、何か所かは、あれれ・・・
となりましたので、書いておきます。


ライブラリ

ライブラリに
Mb2Vpd5nfD3Pz-_a-39Q4VfxhMjh3Sh48
を追加します。




検索に、
Mb2Vpd5nfD3Pz-_a-39Q4VfxhMjh3Sh48
を入れれば出てきますが、
バージョンが問題で、最新なら良いという事はなく、
現在は、14くらいまで表示されますが、14では動きませんでした。
そこで、参考にしたページの画像にあった、7を指定することで動作した次第です。


スクリプト

スクリプトは、そのまま貼り付ければ問題ありません。

var Twitter = {
projectKey: "**************",
consumerKey: "**************",
consumerSecret: "*************",
apiUrl: "https://api.twitter.com/1.1/",
oauth: {

スクリプト内の、
プロジェクト キー
Twitterの Consumer Key
Twitterの Consumer Secre
この値を変更します。


プロジェクトキー





サポート終了と書かれているので、
今回の方法も、いつまで使えるか心配になってきますが・・・
このプロジェクトキーです。


Consumer KeyとConsumer Secre

Twitterの、Application Managementの画面で、



コピペしましょう。


認証

先のページに書かれている通りに進んでください。

スクリプトの、
twitterAuthorizeUrl
を実行し、ログを見て、



表示されるURLを、ブラウザで表示して、認証してください。


ツイートのテスト


function TweetTest() {
var res = Twitter.tweet("GASテストツイート");
}

これをスクリプトに追加し実行して、
無事ツイートされていれば大成功ということです。


Botの作成

スプレッドシートのA列に、ツイート内容を記載します。



スクリプトは、
function YamaTweet() {
  var ash = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ash.getActiveSheet();
  var lastRow = sheet.getLastRow();
  var i = Math.floor( Math.random() * (lastRow-2))+2;
  var res = Twitter.tweet(sheet.getRange(i, 1).getValue());
}

ランダムにツイートすることにしました。
乱数は0から始まり、先頭行は見出しなので、
-2を最大数として乱数を発生させて、+2で行数を求めています。

後は、トリガーで一定時間ごとにツイートするように設定。





以上で、
Google Apps Scriptによる、Twitter Botの完成です。




同じテーマ「Google Apps Script応用」の記事

Excel流の最終行の取得

新着記事 ・・・新着記事一覧を見る

メモの挿入・削除と改行文字|Google Apps Script入門(12月6日)
リンクの挿入・編集・削除|Google Apps Script入門(12月6日)
セルに数式を入れる|Google Apps Script入門(12月1日)
セルのコピー&各種ペースト|Google Apps Script入門(11月22日)
Twitter Bot 作成|Google Apps Script応用(11月6日)
Excel流の最終行の取得|Google Apps Script応用(11月6日)
方眼紙Excelが楽に入力できるVBA|ExcelマクロVBAサンプル集(11月5日)
「ポケモンを確実に見つける方法」をExcelで数学してみた|エクセル雑感(11月4日)
スプレッドシート(ブック)の作成・名前変更|Google Apps Script入門(11月4日)
シートの挿入・削除・名前変更|Google Apps Script入門(11月3日)

アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|ExcelマクロVBA入門
2.RangeとCellsの使い方|ExcelマクロVBA入門
3.徹底解説(VLOOKUP,MATCH,INDEX,OFFSET)|エクセル関数超技
4.Range以外の指定方法(Cells,Rows,Columns)|ExcelマクロVBA入門
5.セルの参照範囲を可変にする(OFFSET,COUNTA,MATCH)|エクセル関数超技
6.セルのコピー&値の貼り付け(PasteSpecial)|ExcelマクロVBA入門
7.CSVの読み込み方法|ExcelマクロVBAサンプル集
8.変数とデータ型(Dim)|ExcelマクロVBA入門
9.セル・行・列の削除・挿入(Delete,Insert)|ExcelマクロVBA入門
10.ひらがな⇔カタカナの変換|エクセル基本操作




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。



↑ PAGE TOP