API を使って Twitter につぶやきを投稿する | Q's software

API を使って Twitter につぶやきを投稿する

今まで Twitter の TL (自分のツイート) を自作のプログラムで取ってきて、FC2 のブログに投稿するなんてことはしてのたで、 「Twitter 情報を取得する」ということはしていたのですが、今回、ちょっとやりたことがあって、「Twitter に情報を設定する」ということにチャレンジしました。まあ、いろいろな人がいろいろなことしてくれているので、かなり簡単に出来てしまいました。

「Twitter 情報を取得する」をしたことがるので、Twitter の API がどんな感じかくらいは知っていたのですが、いかんせん仕事で使わないと「動けばいい」が大前提で詳しく理解していないので、「あ~、面倒臭そうだな~」という印象でした。自分の TL を取得するのは、Twitter にアカウントを持ってない人でも見れるので、つぶやきを投稿するとなると承認する部分を実装しなきゃいけないんだろうな~と。こんなことなら、暇な 3 月頃の時期にこの辺も押さえておくべきだったと少し公開です。

Windows 上で動作させるのでもう .NET にした方がよかったと思うのですが、面倒なので懲りずに PHP をスタンドアロンで動かすことに。

承認の xAuth/oAuth みたいのをどうするんだろうと、Web で探していると、それをひっくるめたライブラリっぽい物を公開している ホームページ を見つけて即採用です。まあ、これさえ使えば

あとは、そらぁ簡単です。

require_once "Services/Twitter.php";

$tweet = "おいらのつぶやきを聞いてくれ!"
$user = 'username'
$pass = '********';
$st =& new Services_Twitter($user, $pass);
$st->setUpdate($tweet);


と、これだけです。自前で作りたければ Services/Twitter.php を見ればソースコードそのものだから随分と参考になるんじゃないかな?API は setUpdate 意外にも色々あるのでたいていのことはできると思います。

こんなことができればですね...
最新の情報が 1 回だけ bot されて終わるのではなく、情報の有益性に寿命がないような場合に、何度もランダムに bot し直すようなことがしたかったんです。

Twitter のつぶやきをオリジナルだけ落としてきて、落としてきたものからランダムでチョイスした物を再度 Twitter に投稿するみたいなことを自動で行うことができませす。オリジナルとクローンの区別は source でつきます(つけなくても確率が変わるだけで動きます)。API で UP した場合は API って表示されるし、もしくは任意の source を埋め込んでもおけばいいと思います。

ただ、これを Windows のタスクスケジューラで動かそうと思っているところが少し貧相です。

人気ブログランキングへ