今回はPythonとMac標準搭載のCronを使って、
指定した語句を含むツイートを完全自動でファボするbotを開発したので、
こちらのノウハウを紹介する。
#背景
Twitter運用でテキトーにふぁぼすれば認知度増えて、
フォロワー増えんじゃねという仮説のもと、ツール作成を発案
最初は弟に作成を依頼していたが、私がエンジニア配属になったので勉強がてら自前作成することに...
##開発者のスキル
・文系私立大学出身
・開発当時のプログラミングスキルは開発未経験の初心者(Progateは一通り実施)
・もちろんAPIなどにはノータッチ
・現在はクラウドインフラエンジニアとして日々精進
・Twitter @postkershaw
#こんな方に読んでほしい
・Twitterの運用を少しでも自動化したい
・TwitterAPIを触ってみたい
・Pythonを使ってみたい
・プログラミングを始めたばかりで、実践的なコードを書いてみたい
#開発環境
OS : Mac 11.3.1
統合開発環境 : VS code
言語 : Python3, mac linux
TwitterのAPI使用
#本投稿の内容
・TwitterのAPI取得から自動ファボを実施するMACの設定方法まで
※あくまで自己責任での実施をお願いします。
#TwitterAPIの取得
自動ファボBotを作る上でTwitterのAPIが必要だということを有能な弟から事前に聞いていたので、ググってみたら魅力的な記事を発見!!
ちょっと情報は古いけど、ここにある手順通りに進めたら無事申請できた(手順変わってたらすみません...)
#Pythonのコーディング
具体的なコーディング方法は以前noteの方に書いたので、こちらを参照していただけると幸い
ちなみに
for result in reversed(search_results):
このように書き換えると投稿の早い順にソートを変更可能
#cronを使用し、ふぁぼの実行さえも自動化
macのターミナルを使用して、
crontab -e
を実行すると空のcrontabが出てくるので、
03 8 * * * python3 実行ファイルのpath
のようなコマンドを入れる(iを押してinsertモード)
意味としては、左から
03 = 分
8 = 時
- = 日付(アスタリスクだと毎日)
- = 月(アスタリスクだと毎月)
- = 曜日 (アスタリスクだと毎日)
今回はPython3を使用するので、python3と指定した
記入後は、escキー → 「:wq」
crontab -l
こちらのコマンドを実行し、記述したコマンドが反映されていたら設定完了
crontabに関して、詳しくは下記参照
crontabの書き方
cronにアクセス権を付与してない方向け
しかし、cronで設定しただけだとパソコンがスリープ状態では動作しない...
自動でスリープ状態から起動する設定をする
「システム環境設定→バッテリー→スケジュール」を設定可能
起動またはスリープ解除と同時に、スリープになる設定も行うと良いかも
これら全ての起動に成功すると...
このような画面がターミナルに見える
You have new mailの内容をみたいなら
mail
を実行すると、cronからコマンドを実行したというログメール的なものが届く
#振り返り
AWSなどで24時間稼働するようなVMかサーバを立てないと
厳しいかなと思っていたが、自分のPCでも実行可能で大満足
結論: Pythonは怠け者の味方
ちなみに自動ファボを実施してフォロワーは殆ど増えていません
ツイッターって難しい...
よろしければフォローをお願いします
Twitter @postkershaw
主にテクノロジー関連と株について呟いてそうろう