くだらないことを思いついたので、形にしてみた。
Twitter で 11:11、22:22 とかに『11:11 11 時 11 分をおしらせ。』とつぶやくほんとくだらない Bot を作りました。
http://twitter.com/zorome_oshirase
Perl で Net::Twitter。
相変わらず恥ずかしいけど Source 公開しちゃえ!!
スクリプト
[nobuyuki@P2980 oshirase]$ cat oshirase.pl #!/usr/bin/perl -w use strict; #use Warnings; use Net::Twitter; #use Encode; use Jcode; use DateTime; my $dt = DateTime->now( time_zone => 'Asia/Tokyo' ); my $time = $dt->strftime('%H:%M'); chomp $time; my $h = $dt->strftime('%H'); my $m = $dt->strftime('%M'); $h =~ s/^0//g; $m =~ s/^0//g; #&post_twitter("testあああああ $time"); my $time_file = '/home/nobuyuki/perl/twitter/oshirase/timelist.txt'; open my $fh, '<', "$time_file" or die $!; my @time_strings = <$fh>; foreach my $set_time ( @time_strings ){ chomp $set_time ; if ( $time eq $set_time ) { &post_twitter("$h時 $m分をお知らせ。"); } } sub post_twitter{ my $strings = $_[0]; my $twit = Net::Twitter->new( username=>"zorome_oshirase", password=>"furunob123", source=>"fuga", clientname=>"hogee", ); # my $utf8 = Encode::from_to($strings, 'euc-jp', 'utf8'); my $utf8 = Jcode->new( $strings, 'euc')->utf8; my $result = $twit->update("$utf8"); # my $result = $twit->update("$strings"); my $result_code = $twit->http_code; my $result_message = $twit->http_message; print "$result_code : $result_message\n" }
時間リスト( timelist.txt )
[nobuyuki@P2980 oshirase]$ cat timelist.txt 00:00 01:01 01:11 01:23 02:02 02:22 03:03 03:21 03:33 04:04 04:44 05:05 05:55 06:06 07:07 08:08 09:09 10:10 11:01 11:11 12:12 12:34 13:13 14:14 15:15 16:16 17:17 18:18 19:19 20:20 21:21 22:22 23:23 24:24
cron で毎分起動( * * * * * )して時間リストにある時間に該当したら時間をつぶやく。いい加減なプログラムです。
ぞろ目以外にも時々つぶやきます。
きっかけは、ラジオ DJ の玉川美沙さんが、よく嬉々とぞろ目時間をお知らせしていたのを思い出したため。『いま、22時22分!!』とか。
時報はあったけどぞろ目はなかったので作ってみました。
仕事で使ってる MacBook で書いたので、この PC が起動している間だけです。
サーバに移すかは未定。(そのまま動かしたら文字コードの問題があるんだよなぁ〜。)
サーバに移した。use Encode; で書こうと思ったけどうまくいかなかったので use Jcode; 使いました誰か使い方をおしえてくだしあ。使えるようにがんばります。
はぁ。くだらないなぁ。
Twitter クライアントだと 1 分おきにしかとりに行けないのでずれます…。とかサーバがしょぼいとかいろいろありますが、まあいいか。
※追記
pit でソースに ID / PW を表記しないようにしました。→ https://www.gimmix.org/trac/zorome_oshirase/browser/trunk