上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Twitterでつぶやく

スポンサーサイト スポンサー広告 トラックバック(-) コメント(-)

"ツイッターbotのつぶやきワードを追加削除する、簡易的なwebアプリっぽいもの"
じゃあ長いのでとりあえずは「twikker(ついっかー)」で統一します(すでにありそうですが・・・)

その1:ツイートを簡易DBで管理する

ということで、ツイート(botがつぶやくワード)をCSVで簡易DBにしちゃいます。
出来るだけシンプルなつくりにしたいので、CSVファイルの中身は一行のカンマ区切りの配列で表記します。

例:
おはようございます,こんにちは,こんばんは

このように記述したCSVの配列をPHPで読み込み、ランダムに一つ選択してツイートする。
という感じのプログラムを作ります。

%E3%83%84%E3%82%A4%E3%83%83%E3%82%BF%E3%83%BCbot%E3%81%AE%E3%81%A4%E3%81%B6%E3%82%84%E3%81%8D%E3%83%AF%E3%83%BC%E3%83%89%E3%82%92%E8%BF%BD%E5%8A%A0%E5%89%8A%E9%99%A4%E3%80%8Ctwikker%E3%80%8D%E3%80%80%E3%81%9D%E3%81%AE1%EF%BC%9A%E3%83%84%E3%82%A4%E3%83%BC%E3%83%88%E3%82%92%E7%B0%A1%E6%98%93DB%E3%81%A7%E7%AE%A1%E7%90%86%E3%81%99%E3%82%8B Twitterでつぶやく


まずはCSVファイルの作成です。
テキストエディタに上記のようにカンマ区切りでワードを追加していきます。
拡張子を「.CSV」、文字コードはUTF-8で保存します。

そしてもう一つ注意、保存したCSVファイルはアップロード後、書き込み可に属性変更しなければなりません。
パーミッション値で言う666 rw-rw-rw-です。
オーナー、グループ、その他それぞれの"書込み"にチェックが入っていればOKです。


次にPHPを用意します。
botの本体となるPHPファイルですが、
・OAuth認証
・配列からワードを取得
・ツイッターへPOST
というシンプルなつくりにしてみました。

<?php
// twitteroauth.phpを読み込む
require_once("twitteroauth.php");

$consumer_key = "";
$consumer_secret = "";
$access_token = "";
$access_token_secret = "";

// OAuthオブジェクト生成
$to = new TwitterOAuth($consumer_key,$consumer_secret,$access_token,$access_token_secret);

// CSVファイルを読み込み、POSTするワードをランダムに抽出
$handle = fopen( 'data.csv', 'r' );
$mes = fgetcsv( $handle );
if(! empty($mes)){
$key = array_rand($mes);
$post = $mes[$key];
}

// TwitterへPOSTする。パラメーターは配列に格納する
$req = $to->OAuthRequest("https://twitter.com/statuses/update.xml","POST",array("status"=>"$post"));

header("Content-Type: application/xml");
echo $req;
?>


一つずつ解説していきます。

// twitteroauth.phpを読み込む
require_once("twitteroauth.php");

$consumer_key = "";
$consumer_secret = "";
$access_token = "";
$access_token_secret = "";

// OAuthオブジェクト生成
$to = new TwitterOAuth($consumer_key,$consumer_secret,$access_token,$access_token_secret);


まずはOAuth認証です。
$consumer_key,$consumer_secret,$access_token,$access_token_secret
それぞれにアプリケーションキーを入力します。ここは定期POSTのbotと同じです。
こちらから登録し、取得してください。
Twitterアプリケーション - Create cool applications! | dev.twitter.com

アプリケーションキーについてはこちらなどを参考にするといいと思います。
Twitterbot制作手引き:OAuthアプリケーションの登録


// CSVファイルを読み込み、POSTするワードをランダムに抽出
$handle = fopen( 'data.csv', 'r' );
$mes = fgetcsv( $handle );
 //CSVデータ[data.csv]を読み込み、一行目を配列として取得
if(! empty($mes)){
$key = array_rand($mes); 
//取得した配列からワードをランダムに抽出
$post = $mes[$key];
}


ここがミソです。
$handle = fopen( 'data.csv', 'r' );
data.csvにデータを格納したcsvのパスが入ります。

$req = $to->OAuthRequest("https://twitter.com/statuses/update.xml","POST",array("status"=>"$post")); 
ワードを格納した変数(ここでは$post)が指定されているか確認してください。


これで完了です。いたってシンプルですよね。
この時点でもCSVをカンマ区切りで編集することでつぶやきを追加できます。
通常のbotPHPと同じく、アップロードしたファイルをウェブ上でコールすることで処理します。

おわかりいただけたでしょうか。説明するって難しい・・・。
次回は追加する処理を書いていきます。

関連記事
スポンサーサイト

ツイッターbotのつぶやきワードを追加削除「twikker」 その1:ツイートを簡易DBで管理する twitter トラックバック(0) コメント(0)












管理者にだけ公開する

パソコン工房

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。