ツイートを自動生成するTwitterBotを作る

GAS/TwitterBot
two 3d humans give their hand for handshake
この記事は約3分で読めます。

Twitterの仕様変更により、elevated以上のトークンしかこちらのライブラリは使用できません。

Exception: Request failed for https://api.twitter.com returned code 403. Truncated server response: {“errors”:[{“message”:”You currently have Essential access which includes access to Twitter API v2 endpoints only.

というエラーが出た際は、
https://developer.twitter.com/en/portal/products/elevated
こちらより申請を行なってください

今回は以下の質問に回答していきます。

犬の画像(10枚)と猫の画像(10枚)を用意して、さらに、犬に関する本文(10種類)と猫に関する本文(10種類)を用意し、犬か猫の画像をランダムで1枚とってきて、そこに本文をランダムでとってくる際に、犬の時は犬、猫の時は猫に関する本文を取ってくる・・・といった機能ってできますか?

回答としては『出来ます』です。

…が、プログラミングが必要になってくるので参考にしてもられればと思います。

参考サンプル

以下にそれぞれサンプルのシートとサンプルのコードを用意しています。

それぞれコピペしてご利用ください。

サンプルシート
サンプルコード

細かい使い方は次の章で解説します。

自作のライブラリを使っているので、認証などはこちらの記事を参考にしてください。

使い方

まず使い方ですが、今回の要望を踏まえて説明すると、「①画像を選んで」から「②画像にあった本文を選ぶ」ということなので一番左の列にタグと画像のURLを書きます。

画像のURLにはGoogleドライブのリンクを選択してください(詳しくはこちら

その後、スクリプトエディタのページに行き、認証を行い、main関数を呼び出せば上記の図のような順番で処理が走ります。

応用

自動で投稿メッセージを用意する

今回作ったプログラムは画像と本文の組み合わせだけでなく、文と文をランダムで繋げることも出来ます。また列を3列、4列…と増やすことも可能なので組み合わせ次第では膨大な投稿文を作ることが出来ます。

文をランダムで連結してツイートを生成するサンプルシート

ランダムな画像を添付する

また画像を右側に配置することで、本文に合わせた画像を選ぶ事もできます。

ランダムな画像を添付するサンプルシート

最初のサンプルの違いですが、最初のサンプルは猫の画像が多いほど犬が選ばれにくい仕様になっていたのですが、こちらは一番左の列の投稿文の数に応じて投稿の確率などを工夫することが出来ます。

↑の例では犬と猫が1/2で選ばれますが、その後の犬の画像は固定、猫の画像はランダムで画像が選ばれます。

もちろん画像も列を増やせば2,3枚目もランダムで連結させることが出来るのでお試しください。

最後に

今回のは応用が様々出来そうだったので、久しぶりに記事を書いてみましたがいかがだったでしょうか?

久しぶりすぎて細かい説明を書く体力がなくなったので、わからないことや追加で知りたいことがあったらコメントやTwitterでご連絡ください。

ご閲覧ありがとうございました!

コメント

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