TwitterのBotを作ろうとして頓挫した話

 やあやあ、どうも、お久しぶりでございます。

 最近またプログラミング周りの勉強を再開しているのですが、昨日TwitterBotを作ろうとして頓挫したので、自分の中での整理を兼ねてちょっと書いてみようと思います。


 目的:今利用中のROJIKAJIのアカウントで日に何回かお気に入りのミュージックビデオを自動でツイートしたい。


 初期の構想:レンタルサーバーのcron機能を使ってスクリプトを叩けば多分できると思う。OAuth認証PHPのTwitterOAuthを使えば何とかなるだろう。


 処理系のインストール:
 まず自分のWindowsマシンにPHPをインストール。といっても、PHPの処理系をダウンロードして解凍してCドライブ直下に置いてパスを通しただけで、設定ファイルをいじったりはしてません。とりあえず、動いてるしいいだろうということですね。
 実はこの辺に問題があるのですが、それはまた後で……


 プログラミング:
 こちらのページを参考にさせていただきました。ただ、この記事が書かれたころとTwitterOAuthのバージョンが違うようで、その変更点に関する部分だけは修正してあります。

 具体的には、

require_once('twitteroauth/twitteroauth.php');

 という一文を、

require "vendor/autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;

 に変更しただけです。この辺りは、TwitterOAuthの公式ページに記述があります。


 実行:
 これで完成かと思いきや思わぬ落とし穴が。
 curl_init関数が呼び出せないというエラーが表示されるのです。じゃあcurl_initが入ってるパッケージをインストールすればいいんだろ……と、ダウンロードしてきても、それはmakeとかでコンパイルしなきゃいけないやつで、ちょっと僕には敷居が高い感じ。結局、今回はあきらめてtwittbotさんを利用することに。ちょっと入力が面倒ではありますが、700もパターンを登録できてなかなかいい感じです。


 結論:
 実はcurlに関するモジュールは最初にダウンロードしたPHPのフォルダに同梱されていて、php.iniの設定をいじって(extensionとextensionパスの設定です)やらなければならなかったようです。

 しかもテストプログラムを書いて確認してみると、レンタルサーバーでもちゃんと動作している様子。僕の一人相撲じゃん!

 実際動かしてみると今度はエラーが出ませんでしたので、たぶんこれで作れるんだろうと思います。