Google Apps Script応用
Twitter Bot 作成

Google Apps Script(GAS)の応用編です
最終更新日:2019-07-24

Twitter Bot 作成

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


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

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

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

この記事は、自身の備忘録として書いています。


参考にしたページ


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


準備

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

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

Google Apps Script Twitter

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

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

右上の、
Google Apps Script Twitter


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

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

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

最後の段階で、
Google Apps Script Twitter
この、
Keys and Access Tokens
有効にするために、一番下のボタン押下が必要になります。


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


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


ライブラリ

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

Google Apps Script Twitter

検索に、
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
この値を変更します。


プロジェクトキー

Google Apps Script Twitter

Google Apps Script Twitter

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


Consumer KeyとConsumer Secre

Twitterの、Application Managementの画面で、

Google Apps Script Twitter

コピペしましょう。


認証

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

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

Google Apps Script Twitter

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


ツイートのテスト


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

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


Botの作成

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

Google Apps Script Twitter

スクリプトは、
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

Google Apps Script Twitter


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




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

Excel流の最終行の取得
Twitter Bot 作成


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

「VBAで導関数を求めよ」ツイッターのお題をやってみた|エクセル雑感(2月9日)
Property {Get|Let|Set} ステートメント|VBA入門(2月9日)
フィボナッチ数列(再帰呼び出し)|VBA技術解説(2月8日)
エクセルで連立方程式を解く(MINVERSE,MMULT)|エクセル雑感(2月7日)
スピルって速いの?スピルの速度について|VBA技術解説(2月4日)
スピルでVBAの何が変わったか|VBA技術解説(2月3日)
スピルについて|エクセル入門(2月3日)
エクセルで「もういくつ寝るとお正月」|エクセル雑感(1月29日)
VBAの少数以下の演算誤差について|VBA技術解説(1月29日)
VBAで写真の撮影日時や音楽動画の長さを取得する|VBA技術解説(1月23日)


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

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
4.マクロって何?VBAって何?|VBA入門
5.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
6.変数宣言のDimとデータ型|VBA入門
7.繰り返し処理(For Next)|VBA入門
8.セルに文字を入れるとは(Range,Value)|VBA入門
9.空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)|VBA技術解説
10.ひらがな⇔カタカナの変換|エクセル基本操作




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


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



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