『ぞろ目をおしらせ』という Twitter Bot を作った。

くだらないことを思いついたので、形にしてみた。

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