結城浩のはてなブログ

ふと思いついたことをパタパタと書いてます。

コマンドラインでTwitterの表示をするPerlスクリプト

Net::Twitter::Liteモジュールを使用してコマンドラインTwitterの表示をするPerlスクリプトです。
準備

C:\work> ppm install YAML::Syck                (YAML::Syckモジュールをインストール)
C:\work> ppm install Net::Twitter::Lite        (Net::Twitter::Liteモジュールをインストール)

スクリプト(printw.pl)

#!/usr/bin/perl
use strict;
use warnings;
use Encode;
use YAML::Syck;
use Net::Twitter::Lite;
use Data::Dumper;

my $yaml = 'printw.yaml';
my $conf = YAML::Syck::LoadFile($yaml) or die qq{$yaml:$!\n};
my $nt = Net::Twitter::Lite->new(
    traits => [qw/API::REST/],
    username => $conf->{username},
    password => $conf->{password},
);
my $stats = $nt->friends_timeline({ count => 10 });
# print Dumper($stats);
for my $s (@$stats) {
    print $s->{user}->{screen_name};
    print "\n";
    print encode($conf->{encoding}, $s->{text});
    print "\n\n";
}

設定ファイル(printw.yaml)

username: your-name@example.com
password: xxxxxxxxxxxxxxxx
encoding: Shift_JIS

次のように実行すると、friendsのタイムラインを表示します。

C:\work> perl printw.pl

バッチファイルを作るには
次のようにするとprintw.batというバッチファイルが作られます。

C:\work> pl2bat printw.pl

こうしておけば、以下のようにして表示できます。

C:\work> printw