[Raspberry Pi] Twitter API を使わない bot の作成

これまで Twitter bot を作ろうとして、さまざまな方法を試してきた。

[Mac] 強引に Tweet bot を作る – with a Christian Wife
https://wacw.cf/2016/07/27/making-twitter-bot-on-mac/

Raspberry Pi + PHP で Twitter bot を作る – with a Christian Wife
https://wacw.cf/2018/02/15/twitterbot-with-php-on-pi/

FileMaker で Twitter に投稿する2 – with a Christian Wife
https://wacw.cf/2019/08/29/tweet-with-filemaker-2/

Twitter bot の作成に苦労しているのは、私の Twitter アカウントでは API の利用ができない状態になっているからだ。

Twitter developer account の申請はハードルが高い – with a Christian Wife
https://wacw.cf/2018/12/09/applying-to-twitter-developer-account/

Twitter API を使わずに bot を実現するにはどうすればいいか。私は過去のブログ記事を自動ツイートするのが bot の目的なので、そのブログ記事は 1000 以上ある。数が多いので、FileMaker で管理し、投稿順番もランダムにしたい。

最終的には以下のようにしている。

(1)FileMaker で投稿文を管理・作成。

(2)投稿文をコピーして、Terminal にペースト。

(3)tw という Twitter クライアントでツイートする。

スクリプトを組んだりすればもっとシンプルにできるのかもしれないが、私のスキルではできないので、アナログな方法でやっている。Keyboard Maestro を使えばあらゆる操作を自動化できるからだ。

この方法の欠点はマシンを専有してしまうこと。ウィンドウ間でテキストをコピペしたりするからだ。だから、サーバー目的の Mac 上で運営していた。

しかしそれを Raspberry Pi で運用することにした。FileMaker Server で投稿文を管理し、Raspberry Pi からは FileMaker WebDirect でアクセスする。そのテキストを xdotool でコピペして Terminal からツイートする、という流れだ。キーボードやマウス操作を自動化できる xdotool が Mac でいう Keyboard Maestro の代わりというわけだ。

それなりに苦労したけれど、1日がかりで Raspberry Pi による bot を完成できた。