マンダリンオレンジ in hatenablog

esujiがアニメ・漫画について書くブログ。はてなダイアリーから引っ越してきました

PHPでTwitterbot(いろいろと略)を読んだ初心者が始めの一歩までを軽く紹介するための10ステップ

 一部で(?)話題になっている、PHPによる誰でも出来る簡単Twitterbotの作り方 - 遥か彼方の彼方からを読んだけど、実装まではどうするのよ、新しく開発環境を整えるのめんどくさいという人のために、またリアル友人への説明を簡単にするため、僕が実際にやってみた経緯を通して解説できたらと思って書いてます。
 タイトルはもちろんアニオタが非オタの彼女にアニメ世界を軽く紹介するための10本からのリスペクトです。ちなみに僕は、Cならforとかifを駆使して作ろうと思えるものを作れる程度、matlabはディレイのフィルタを作って遊んでいる程度、Javaは勉強を始めたところ、Nscriptorは選択肢なしのゲームを作って遊んでいた程度です。あまり意味の無い紹介だったか。


 一歩を踏み出す人の設定は、

プログラミング知識はいわゆる「HSP」的なものを除けば、C言語FizzBuzz程度は作れる

do whileまでを使う気はないが、順応性はけっこう良い

という条件で。

まずは開発環境的に。出した順番はかなり重要。

PHPとは?

まあ、いきなりここかよ、というか当然の流れだけれど、「Perlとの違い」を濃縮しきっていて、「PHPの特徴」を決定づけたという点では外せないんだよなあ。長さも小さいうまい棒一本分もないし。
HTMLっぽい動きをするプログラム、もしくはその逆。というのが今日一日やっての個人的な感想だけど、PHPとは? 初心者用PHP入門によると、

PHPとはPHP: Hypertext Preprocessorの略でWEBページを記述することに特化したサーバーサイドスクリプト言語です。簡単に言うとWEB上で動く掲示板やチャットなどを作成するのに便利なプログラム言語とゆうことです。

だそうです。コンパイラがなくて、web上で実行したときに機械語に翻訳されるというのも個人的には気になったところ。


Apacheのインストール

 Apacheとは、PHPを走らせるために必要なバックボーンという個人的な印象だが、しらねーし!かんけーねーし!という人はとにかくApacheのインストール 初心者用PHP入門を参照の上、インストールする。大丈夫だよね、付いてこれてるよね。


PHPのインストール

 お次はいよいよPHP本体のおでましだ!こいつがなければ始まらないぜという代物。Cの導入と比べると違和感を感じるけど、あれはコンパイラによる部分が大きいのかな。Javaもバージョン選んでだったから、それと似たようなものかな。
 上と同じくPHPのインストール 初心者用PHP入門からインストールする。


 これで開発環境は整ったはずです。最後の動作確認でソースが表示されてしまう人は、Apacheの再起動がうまくいってないと思います。確実に行うなら、右下に出るアイコンを右クリックして設定画面を開いてください。そこでSTOP、STARTとすればうまくいくと思います。


ソースコードの作成

 ここまで来たらコードを書くだけです。とはいえ、ベースは既に提示されているPHPでTwitterに投稿 - HIRACCHI H.D.を使うので、単純にPOSTするくらいなら特別難しいことはありません。
 PHPのバージョンが4のものと5のものがありますが、お好きなほうを選んでください。何が違ってくるかなんてことは僕に今日勉強を始めた僕に聞かないでほしいのですが、サーバをレンタルするときに、新しい方では対応されていないということはあるようです。新しければ何でもいいというわけではない、というのはJavaにも通じることですね。


 とりあえずPOSTまでいきたいなら、

$username = your username;

のyour usernameに自分のIDを入力します。
同じように

$password = your password;

のyour passwordに自分のパスワードを入力します。
最後に

$params = "status=". rawurlencode(message);

のmessageがPOSTされる中身になるのでそこを改変してもいいと思います。最初は日本語を入力しないで英数字だけでやってみるといいと思います。というのも僕の環境で日本語が通らずにいろいろやってる段階なので、人に教えられる段階ではないので。


 ソースコードに名前をつけて入力したらルートフォルダに保存します。仮にtest.phpという名前をつけるとすると、上で紹介したサイトと同じ設定にしてあるなら「C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\test.php」のはずです。


 いよいよ実行です。上で紹介したサイトと同じ設定にしてあるならhttp://localhost/test.phpにブラウザからアクセスすればtest.phpが実行されます。実行結果は、ブラウザ上では何も表示されませんが、Twitter上で見ればPOSTされてあるはずです。
 これで、botへの道をあなたも踏み出しました。おめでとうございます。



 時間がないので取り急ぎこれにて失礼します。botへの道へは、勉強ができたところから追記を行いたいと思ってます。
 このエントリを書くにあたってid:hirataka522id:tek_kocのお二方とhttp://www.standpower.com/:title=初心者用PHP入門]さまには大変お世話になりました。失礼ながらこの場にてお礼申し上げます。



 ちなみに、僕が作ってみたのは今日の年月日を素因数分解してPOSTするやつです。こんな感じ→http://twitter.com/esuji5/statuses/878062145