忍者ブログ
パソコンやネットに関係あるかも、と思ったネタのストック場。
[20] [19] [18] [17] [16] [15] [14] [13] [12] [11] [10]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

 前回と全く同じ事を言いますが、どうやったら上手い題名が付けられるのか…。
 取り敢えず、今回話題にするのは、時間帯の指定です。EasyBotterの基本的設置ができている方でないと、難しいかもしれません。
 …本当は一から解説記事を書いた方が良いんでしょうが、色々調べていったら既に解説サイト様がゴロゴロ転がってたので、続きからリンク貼ったり一言付け加えたりする程度にとどまると思います。

 なお、ここで用いているEasyBotterのプログラムの配布元は以下です。
プログラミングができなくても作れるTwitter botの作り方


 どうしてもそのサイトが見つからなかった場合のみ、以下からも可。
ダウンロード(zip) ver.2.05

 ただし、最新版が更新されている可能性はありますので、できれば大元のサイトに出かけて下さい。設置方法とかトラブルシューティングとかもありますので。

 以下、続きで書いてみます。


.

+ + + + + + + + + +
 まぁ、ぶっちゃけてしまえば『EasyBotter 非公式wiki』や『bot製作一日目。』でも解説されているので、今更ここで書かなくてもそっちを見てもらえれば良いんですが、多少の自分的に必要だった無駄知識を付け足すのが目的で。
 前回もちょっと書きましたが、if構文という、条件を指定する構文があります。そこで、日付に関する関数を指定して、決まった時間に特定の動作をさせようというのが今回の目的です。

 配布されているbot.php内には、既に例がいくつもあります。
 そのまんま引っ張ってきたのが以下。

//bot.phpを実行したときに、0分、15分、30分、45分だったら実行される
if(date("i") % 15 == 0){
$response = $eb->postRandom("data.txt");
}

//bot.phpを実行したときに、午前だったらgozen.txtのデータを、午後だったらgogo.txtのデータを使う
if(date("G") < 12){
$response = $eb->postRandom("gozen.txt");
}else{
$response = $eb->postRandom("gogo.txt");
}

//bot.phpを実行したときに、2月14日のみvalentine.txtのデータを、それ以外はdata.txtのデータを使う
if(date("n") == 2 && datew("j") == 14){
$response = $eb->postRandom("valentine.txt");
}else{
$response = $eb->postRandom("data.txt");
}

 まぁ、これだけそっくりなものが並んでたら、大体類推できたりしますよね…。
 不等号に関しては、前回も触れましたが、コピペします。

=== (とても厳密に)等しい
== 等しい
<= ≦
>= ≧
< そのまま
> そのまま

 また、EasyBotter 非公式wikiでも述べられていますが、

&& and
|| or

も条件の中に併用できます。
 これをどう使うかは、EasyBotter 非公式wiki参照で。if関数は上から処理されていくのだという点に注意すれば、曜日と時間を組み合わせた複雑動作だって書けますよ。用意するファイルがすごい事になりますけど…。
 Wikiに載ってない併用方法としては…前回のrandと組み合わせる方法とかがありますね。特定の時間帯で、更に確率を加えたりもできます。具体的にどう応用するかというと、時間帯別ツイートがあまり用意できなくて、通常ツイートも混ぜ合わせたい時などに使います。…まぁ、ピンポイントな話なので、この記事ではこれくらいで。

 なお、時間の関数ですが、phpマニュアルを参考にすると良いです。
 botによく使われそうな関数としては、以下のような感じかな…。

G…時。24時間単位。先頭にゼロを付けない。(0 から 23)
H…時。数字。24 時間単位。(00 から 23)
i…分。先頭にゼロをつける。(00 から 59)
s…秒。先頭にゼロをつける。(00 から 59)

D…曜日。3文字のテキスト形式。(Mon から Sun)
w…曜日。数値。(0 (日曜)から 6 (土曜))

d…日。二桁の数字(先頭にゼロがつく場合も)(01 から 31)
j…日。先頭にゼロをつけない。(1 から 31)
m…月。数字。先頭にゼロをつける。(01 から 12)
M…月。3 文字形式。(Jan から Dec)
n…月。数字。先頭にゼロをつけない。(1 から 12)

a…午前または午後(小文字)(am または pm)
A…午前または午後(大文字)(AM または PM)

 大文字と小文字、先頭に0がつくかどうかが区別されている事に注意してください。

 ちょっと色々詰め込みすぎて不明瞭な感じになってますが、今回はこれにて。
 また何かあれば、コメントや拍手、ツイッターのリプライなどで指摘して頂ければ。反応は遅れるかもしれませんが、対応できれば対応します。

拍手

PR
この記事にコメントする
お名前
タイトル
文字色
URL
コメント
パスワード Vodafone絵文字 i-mode絵文字 Ezweb絵文字
管理人のみ閲覧可能にする    
この記事へのトラックバック
この記事にトラックバックする:
カレンダー
04 2024/05 06
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
ブログ内検索
最新コメント
[03/08 ゾーホージャパン]
最新トラックバック
プロフィール
HN:
木菟 伶
性別:
非公開
職業:
学生
自己紹介:
パソコンで遊ぶのが
割と好きで、
本屋さんに通うのも
結構好きで、
軽い調べ物なら好きな、
探せばどこかにいるような
そんな学生。

イマドキらしく
忘れっぽく、
熱されても
冷めてしまうことも。
Twitter
バーコード
Powered by ニンジャブログ  Designed by ゆきぱんだ
Copyright (c) とある学生のパソコンつれづれ。 All Rights Reserved
忍者ブログ / [PR]