GASでスプレッドシート上のテキストをランダムにツイートするプログラムを作った
前回、Google Apps ScriptでTwitterに投稿する方法について紹介しました。今回はこれを利用してスプレッドシートにツイート内容を複数入力しておいて一定時間おきに(上から順ではなく)ランダムにツイートするようなプログラムを作ったので紹介したいと思います。
こちらがスプレッドシートの内容です。ツイート内容をぼかしているのは捨て垢に送ったもので現在もそのツイートが残っており特定を避けるためです(いいねが結構付いてしまって消せないでいる)。1列目のIDはスプレッドシートの行Noで、ツイート後にB列に完了日時を入れる際に使います。filterメソッドを使うので元の行Noを失うことからA列のその情報を持つようにしました。
ここから完了していない(B列に完了日時が入っていない)行をランダムに選びツイートし、そのツイートのB列に完了日時を入れるようにしました。
ソースコードは以下のとおりです。前回同様ここのサイトを参考にしました。
これをGASのタイマー機能を使って一定時間感覚で実行します。エディター左サイドから時計アイコンをクリックし、「新しくトリガーを作成します」をクリックしましょう。
以下のウィンドウが現れるので任意に設定します。実行する関数は「run」を選んでください。今回は時間間隔を10分おきとしました。
設定後しばらく時間を置くと以下のように5分感覚でどんどんツイートされていきます。
ツイートした行には完了日時が表示されます。これが入った行は選択されないのでツイートの重複はありません。
ということで、スプレッドシートを使ったTwitter Botを作りました。今回は日時が入った行は選択されないようにしていますが、一定時間が空いたものは選択できるような仕組みでも良いかと思います。テキストを1000行くらい用意して20分置きにツイートした場合2週間分となります。そこからツイートしてから10日経過したものは新たに選択OKというプログラムにすると永久的なBotが出来上がります。
スポンサーリンク